天天看點

并發性測試AB(apache benchmark)

深夜睡不着,起來好像也沒什麼做,無聊搜了下并發性測試的資料。

有一個項目在lamp伺服器上,剛好查到apache自帶有一個測試工具AB(apache benchmark),于是恍恍惚惚紅紅火火試起來。

先找一部windows下裝個內建環境拉下來試一試(瞬間wamp):

并發性測試AB(apache benchmark)

大家想用哪個看不懂的話就去找下翻譯哈,我隻試了下前倆個。

-n requests //在測試會話中所執行的請求個數。預設時,僅執行一個請求

-c concurrency //一次産生的請求個數。預設是一次一個

指令行打上 ab -c 10 -n 100 http://localhost/就跑起來了。注意window下-c的數不要太大,太大會說積極拒絕請求。

後來查了下,打開apache/conf/httpd.conf檔案

#Include conf/extra/httpd-mpm.conf

把#去掉。

然後更改apache/conf/extra/httpd-mpm.conf檔案中

<IfModule mpm_winnt_module>

ThreadsPerChild 150

MaxRequestsPerChild 0

</IfModule>

将150調大就好,但是鑒于windows下 -c 10 -n 100的表現已經這樣:

并發性測試AB(apache benchmark)

我還是乖乖的去調戲伺服器好了。

并發性測試AB(apache benchmark)

-c 10 -n 100的差距

接着測試了100-1000的并發,伺服器配置也不怎麼好,然而300以下的并發性表現還算良好,再往上就越來越慢了,到1000還沒請求完就崩掉了,性能還有待提高,一個項目的完成也僅僅隻是這個項目的開始

并發性測試AB(apache benchmark)

如果大家有什麼好的測試工具或者建議希望能跟我分享一下,如果有錯誤的地方也請指點。努力學習 ,天天睡覺。