性能測試是評估Linux VPS實際能力的關鍵步驟。通過系統化的測試,您可以:
-
- 瞭解服務器的CPU、內存、磁盤和網絡性能極限
-
- 發現潛在的性能瓶頸
-
- 為應用部署提供準確的容量規劃依據
- 為應用部署提供準確的容量規劃依據
一、綜合性能測試工具(sysbench)
功能:全面評估CPU、內存和文件I/O性能
安裝與測試:
# 安裝命令(Ubuntu/Debian系統)
sudo apt update
sudo apt install sysbench -y
# CPU性能測試(計算20000以內質數)
sysbench cpu --cpu-max-prime=20000 run
# 內存性能測試(1MB塊大小,總計10GB數據)
sysbench memory --memory-block-size=1M --memory-total-size=10G run
# 文件I/O測試流程
sysbench fileio --file-total-size=2G prepare # 創建測試文件
sysbench fileio --file-total-size=2G --file-test-mode=rndrw run # 隨機讀寫測試
sysbench fileio --file-total-size=2G cleanup # 清理測試文件
TIPS:
- CPU測試關注"events per second"值(越高越好)
- 內存測試查看"MiB transferred"速率
- 文件I/O注意"read/write"操作的IOPS值
二、網絡性能測試工具
1. iperf3 - 帶寬測試工具
# 服務端啓動(監聽5201端口)
iperf3 -s
# 客户端測試(替換192.0.2.1為服務端IP)
iperf3 -c 192.0.2.1
輸出關鍵項:
- "Sender"行顯示上傳帶寬
-
"Receiver"行顯示下載帶寬
2. hping3 - 網絡延遲測試
# TCP連接延遲測試(10次請求到80端口) hping3 -S -p 80 -c 10 192.0.2.1 # UDP帶寬測試(10個數據包到5001端口) hping3 --udp -c 10 -p 5001 192.0.2.1參數説明:
- -S:發送SYN包(TCP連接請求)
- -c:指定發送數據包數量
三、實時系統監控工具
1. vmstat - 資源狀態快照
# 每秒刷新系統狀態(按Ctrl+C退出)
vmstat 1
關鍵指標:
- r:等待運行的進程數
- free:空閒內存(KB)
-
si/so:交換區寫入/讀取量
2. top - 動態進程監控
# 啓動實時監控界面 top操作指令:
- 按M:按內存使用排序
- 按P:按CPU使用排序
- 按q:退出界面
四、壓力測試工具(stress)
功能:模擬高負載環境
# 安裝命令
sudo apt install stress -y
# 模擬4核CPU滿載
stress --cpu 4
# 模擬內存負載(2個進程,每個消耗512MB)
stress --vm 2 --vm-bytes 512M
建議:
- 另開終端使用top觀察CPU和內存使用變化
- 測試後及時終止進程(Ctrl+C)
測試建議
1. 測試環境
選擇低峯時段測試,關閉非必要進程並記錄系統初始狀態(使用free -h或df -h)
2. 測試流程
基礎監控→CPU/內存測試→磁盤I/O測試→網絡性能測試→綜合壓力測試
3. 數據記錄
| 測試項目 | 執行命令 | 關鍵指標 | 測試次數 |
|---|---|---|---|
| CPU | sysbench cpu | events/sec | ≥3次 |
| 網絡 | iperf3 -c | bandwidth | 雙向測試 |
| 磁盤 | dd + oflag=direct | MB/s | 讀寫分離 |
參考文章:Linux VPS性能測試的方法與工具詳解