【轉】http_load壓力測試過程和使用方式


介紹:http_load以並行復用的方式運行,用以測試web服務器的吞吐量與負載。但是它不同於大多數壓力測試工具,它可以以一個單一的進程運行,一般不會把客戶機搞死。還可以測試HTTPS類的網站請求。

一、http_load安裝

1)下載http_load安裝包

A、可以直接下載:wget http://acme.com/software/http_load/http_load-12mar2006.tar.gz

B、可以直接下載到本地,然后通過CRT上傳到linux服務器。

2)安裝http_load

A、進入/usr/local目錄下創建man文件夾,並賦予權限;

[root@localhost ~]#cd /usr/local

[root@localhost local]#mkdir man

[root@localhost local]#chmod 777 man

B、進man文件夾中,下載http_load安裝包;

[root@localhost local]#cd man

[root@localhost man]# wget  http://acme.com/software/http_load/http_load-12mar2006.tar.gz

C、解壓、並安裝http_load-12mar2006.tar.gz包;

[root@localhost man]# tar zxvf http_load-12mar2006.tar.gz

[root@localhost man]# cd http_load-12mar2006

[root@localhost http_load-12mar2006]# make

[root@localhost http_load-12mar2006]# sudo make install

 

二、http_load使用

1、創建URL文件

由於http_load運行的是URL文件,所以需要准備一個txt文件;於是,創建一個test.txt文件。

[root@localhost http_load-12mar2006]# touch test.txt

 

編輯test.txt文件:

[root@localhost http_load-12mar2006]# vi test.txt

輸入如圖地址后,保存並退出:

 

 

 

2、運行URL文件

[root@localhost http_load-12mar2006]# http_load -p 10 -s 10 test.txt

說明:

-parallel 簡寫-p :含義是並發的用戶進程數。

-fetches 簡寫-f :含義是總計的訪問次數

-rate    簡寫-p :含義是每秒的訪問頻率

-seconds簡寫-s :含義是總計的訪問時間

 

由於我是虛擬機里弄的,所以會看到如下圖:

 

 

3、結果分析

1)圖中“96 fetches, 10 max parallel, 1.1037e+07 bytes, in 10 seconds”

解釋:在上面的測試中運行了96個請求,最大的並發進程數是10,總計傳輸的數據是1.1037e+07bytes,運行的時間是10秒

2)圖中“114968 mean bytes/connection”

 

解釋:每一連接平均傳輸的數據量1.1037e+07/96=114968

3)圖中“9.59998 fetches/sec, 1.10369e+06 bytes/sec”

 

解釋:每秒的響應請求為9.59998,每秒傳遞的數據為1.10369e+06 bytes/sec

4)圖中“msecs/connect: 99.3326 mean, 3005.02 max, 4.132 min”

 

解釋:每連接的平均響應時間是99.3326 msecs,最大的響應時間3005.02 msecs,最小的響應時間4.132 msecs

5)圖中“msecs/first-response: 71.5985 mean, 708.071 max, 4.093 min”

 

6)圖中“HTTP response codes:code 200 — 96”

 

解釋:打開的頁面類型是200,如果出現403等過多就說明系統遇到瓶頸了。

 

說明:

一般使用http_load做壓力測試時,主要會考慮這“fetches/sec、msecs/connect ”兩個項的結果,即服務器每秒能夠響應的查詢次數來衡量性能指標。

另一方面可以借助nmon來監控linux服務器的CPU、MEN等進行分析。

 

 

 

http_load使用方式:

http_load -parallel 100 -fetches 10000

#100個並發執行10000次

http_load -parallel 100 -seconds 3600

#100個並發執行1小時

http_load -rate 100 -fetches 10000

#每秒100個請求頻率,請求10000次

http_load -rate 100 -seconds 3600

#每秒100個請求頻率執行1小時


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM