在 Apache 本身的套件中, 有個叫 ab(ApacheBench) 的程式, 此程式是專門用在做壓力測試用的套件.
其它的測試軟體: Performance test tools
註: 請勿將此測試軟體用在其它網站上.
ApacheBench(ab) 用來測試 apache 執行效率.
ab 參數
ab 參數:
Usage: /usr/sbin/ab [options] [http[s]://]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 containg 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: zop'
- 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
- -s Use httpS instead of HTTP (SSL)
- -h Display usage information (this message)
ab 使用
ab使用範例:
要執行 1000 次的 connection, 20 次的 concurrent (並行, 同時):
語法: ab -n 1000 -c 20 http://localhost/abc.php
產生出來的結果. 要注意的是以下幾個:
- Time taken for tests: 總共執行花了多久的時間.(以上 1000 次共多久)
- Requests per second: 每秒平均可以處理多少個 connection.
感謝格主整理此文,不過對-p postFile的內容不太了解, 會去查一下資料,感謝指路
應該是把 file 丟上去吧?, 看上傳的速度? 🙂
請不要拿來測試別人的網站,不然會被認為是駭客或把你的IP擋住
個人小意見
嗯, 我忘了加上這個注意事項.. Orz..