三種web效能壓力測試工具

weixin_34292287發表於2017-12-09

壓力和效能測試工具很多,下文討論的是我覺得比較容易上手,用的比較多的三種

http_load

是Linux下的一個網站壓力測試工具,

下載地址:http://www.acme.com/software/http_load/http_load-12mar2006.tar.gz

程式非常小,解壓後也不到100K 居家旅行 攜帶方便 呵呵

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

命令格式:http_load  -p 併發訪問程式數  -s 訪問時間  需要訪問的URL檔案

例如:

引用

http_load -p 30 -s 60  urllist.txt

準備URL檔案:tst.list,檔案格式是每行一個URL,URL最好超過50-100個測試效果比較好,另外,測試結果中主要的指標是 fetches/sec 這個選項,即伺服器每秒能夠響應的查詢次數,用這個指標來衡量效能。似乎比 apache的ab準確率要高一些,也更有說服力一些。

官方的例子:

引用

% ./http_load -rate 10 -seconds 60 urllist.txt

49 fetches, 4 max parallel, 289884 bytes, in 10.0148 seconds

5916 mean bytes/connection

4.89274 fetches/sec, 28945.5 bytes/sec

msecs/connect: 28.8932 mean, 44.243 max, 24.488 min

msecs/first-response: 63.5362 mean, 81.624 max, 57.803 min

4.89274 fetches/sec 這個值得就是說伺服器每秒能夠響應的查詢次數為4.8左右

這個值得是根據 49 fetches / 10.0148 seconds 秒計算出來的

webbench

webbench是Linux下的一個網站壓力測試工具,最多可以模擬3萬個併發連線去測試網站的負載能力。下載地址可以到baidu google搜,我這裡給出一個

下載地址:http://cid-9601b7b7f2063d42.skyd ... webbench-1.5.tar.gz

這個程式更小,解壓後不到50K,呵呵

安裝非常簡單

#tar zxvf webbench-1.5.tar.gz

#cd webbench-1.5

#make && make install

會在當前目錄生成webbench可執行檔案,直接可以使用了

用法:

webbench -c 併發數 -t 執行測試時間 URL

如:

webbench -c 5000 -t 120http://www.askwan.com

ab:apache bench

ab是apache自帶的一款功能強大的測試工具

安裝了apache一般就自帶了,

用法可以檢視它的說明

引用

$ ./ab

./ab: wrong number of arguments

Usage: ./ab [options] [http://]hostname[:port]/path

Options are:

-n requests Number of requests to perform

-c concurrency Number of multiple requests to make

-t timelimit Seconds to max. wait for responses

-p postfile File containing data to POST

-T content-type Content-type header for POSTing

-v verbosity How much troubleshooting info to print

-w Print out results in HTML tables

-i Use HEAD instead of GET

-x attributes String to insert as table attributes

-y attributes String to insert as tr attributes

-z attributes String to insert as td or th attributes

-C attribute Add cookie, eg. 'Apache=1234. (repeatable)

-H attribute Add Arbitrary header line, eg. 'Accept-Encoding: gzip'

Inserted after all normal header lines. (repeatable)

-A attribute Add Basic WWW Authentication, the attributes

are a colon separated username and password.

-P attribute Add Basic Proxy Authentication, the attributes

are a colon separated username and password.

-X proxy:port Proxyserver and port number to use

-V Print version number and exit

-k Use HTTP KeepAlive feature

-d Do not show percentiles served table.

-S Do not show confidence estimators and warnings.

-g filename Output collected data to gnuplot format file.

-e filename Output CSV file with percentages served

-h Display usage information (this message)

引數眾多,一般我們用到的是-n 和-c

例如:

./ab -c 1000 -n 100http://www.askwan.com/index.php

這個表示同時處理1000個請求並執行100次index.php檔案.

相關文章