壓力測試工具介紹

能夠經過壓力測試對網站及服務器性能進行高壓測試,暴露出其所存在的問題。從而對服務器及網站進行調整和優化。
注意在進行壓力測試時要在單獨的機器上進行不要在待測服務器上進行。目前主要有apache的ab、http_load、webbench、Siege等。web

1、http_loadapache

程序很是小,解壓後也不到100Kcentos

http_load以並行複用的方式運行,用以測試web服務器的吞吐量與負載。可是它不一樣於大多數壓力測試工服務器

具,它能夠以一個單一的進程運行,通常不會把客戶機搞死。還能夠測試HTTPS類的網站請求。網絡

下載並編譯安裝:wget http://www.acme.com/software/http_load/http_load-09Mar2016.tar.gz
tar zxf http_load-09Mar2016.tar.gz
cd http_load-09Mar2016
make && make install併發

命令格式:http_load  -p 併發訪問進程數  -s 訪問時間  須要訪問的URL文件高併發

參數其實能夠自由組合,參數之間的選擇並無什麼限制。好比你寫成http_load -parallel 5 -seconds工具

300 urls.txt也是能夠的。咱們把參數給你們簡單說明一下。
-parallel 簡寫-p :含義是併發的用戶進程數。
-fetches 簡寫-f :含義是總計的訪問次數
-rate    簡寫-p :含義是每秒的訪問頻率
-seconds簡寫-s :含義是總計的訪問時間性能

準備URL文件:urllist.txt,文件格式是每行一個URL,URL最好超過50-100個測試效果比較好.文件格式測試

例如:

http_load -p 30 -s 60  urllist.txt
參數瞭解了,咱們來看運行一條命令來看看它的返回結果

 

2、webbench

webbench是Linux下的一個網站壓力測試工具,最多能夠模擬3萬個併發鏈接去測試網站的負載能力。下載

地址能夠到google搜,我這裏給出一個
下載地址:http://soft.vpser.net/test/webbench/webbench-1.5.tar.gz
這個程序更小,解壓後不到50K,呵呵
安裝很是簡單
wget http://soft.vpser.net/test/webbench/webbench-1.5.tar.gz
tar zxvf webbench-1.5.tar.gz
cd webbench-1.5
make && make install
會在當前目錄生成webbench可執行文件,直接可使用了

用法:
webbench -c 併發數 -t 運行測試時間 URL
如:
webbench -c 5000 -t 120 http://www.google.com

3、ab
ab是apache自帶的一款功能強大的測試工具
安裝了apache通常就自帶了,
用法能夠查看它的說明

4、Siege
一款開源的壓力測試工具,能夠根據配置對一個WEB站點進行多用戶的併發訪問,記錄每一個用戶全部請求過程的相應時間,並在必定數量的併發訪問下重複進行。
官方:http://www.joedog.org/
Siege下載:wget http://download.joedog.org/siege/siege-4.0.2.tar.gz
解壓:
tar zxf siege-4.0.2.tar.gz
進入解壓目錄:
cd siege-4.0.2
安裝:
./configure
make && make install

使用
siege -c 200 -r 10 -f example.url
-c是併發量,-r是重複次數。 url文件就是一個文本,每行都是一個url,它會從裏面隨機訪問的。

example.url內容:

http://www.google.com
http://www.baidu.com

結果說明
Lifting the server siege… done.
Transactions: 3419263 hits //完成419263次處理
Availability: 100.00 % //100.00 % 成功率
Elapsed time: 5999.69 secs //總共用時
Data transferred: 84273.91 MB //共數據傳輸84273.91 MB
Response time: 0.37 secs //相應用時1.65秒:顯示網絡鏈接的速度
Transaction rate: 569.91 trans/sec //均每秒完成 569.91 次處理:表示服務器後
Throughput: 14.05 MB/sec //平均每秒傳送數據
Concurrency: 213.42 //實際最高併發數
Successful transactions: 2564081 //成功處理次數
Failed transactions: 11 //失敗處理次數
Longest transaction: 29.04 //每次傳輸所花最長時間
Shortest transaction: 0.00 //每次傳輸所花最短期

五。wrk 壓力測試

[root@centos ~]# wrk -t 2 -c 50 -d 20 --latency http://localhost:5000

參數說明:

-t 須要模擬的線程數
-c 須要模擬的鏈接數
-d 測試的持續時間
--timeout 超時的時間
--latency 顯示延遲統計

結果顯示說明:Latency:響應時間Req/Sec:每一個線程每秒鐘的完成的請求數Avg:平均Max:最大Stdev:標準差

相關文章
相關標籤/搜索