壓力測試工具siege的用法
Siege是linux下的一個web系統的壓力測試工具,支持多鏈接,支持get和post請求,可以對web系統進行多並發下持續請求的壓力測試。
安裝 Siege
01
02
03
04
|
#tar -xzvf siege-latest.tar.gz
#./configure; make
#make install
|
Siege命令常用參數
-c 200 指定並發數200
-r 5 指定測試的次數5
-f urls.txt 制定url的文件
-i internet系統,隨機發送url
-b 請求無需等待 delay=0
-t 5 持續測試5分鍾
# -r和-t一般不同時使用
常用的siege命令舉例
# 200個並發對http://www.google.com發送請求100次
01
|
siege -c 200 -r 100 http:
//www
.google.com
|
# 在urls.txt中列出所有的網址
01
|
siege -c 200 -r 100 -f urls.txt
|
# 隨機選取urls.txt中列出所有的網址
01
|
siege -c 200 -r 100 -f urls.txt -i
|
# delay=0,更准確的壓力測試,而不是功能測試
01
|
siege -c 200 -r 100 -f urls.txt -i -b
|
# 指定http請求頭 文檔類型
01
|
siege -H
"Content-Type:application/json"
-c 200 -r 100 -f urls.txt -i -b
|
Siege輸出結果說明
Transactions: 總共測試次數
Availability: 成功次數百分比
Elapsed time: 總共耗時多少秒
Data transferred: 總共數據傳輸
Response time: 等到響應耗時
Transaction rate: 平均每秒處理請求數
Throughput: 吞吐率
Concurrency: 最高並發
Successful transactions: 成功的請求數
Failed transactions: 失敗的請求數
Siege使用的一些總結
1,發送post請求時,url格式為:http://www.xxxx.com/ POST p1=v1&p2=v2
2,如果url中含有空格和中文,要先進行url編碼,否則siege發送的請求url不准確
添加
siege -C 可以查看相關的配置參數,可以自行修改,比如是否顯示log,超時時間