in Linux

Apache Server Benchmark 測試

要作 apache server benchmark 不用到處尋找其他的軟體,事實上 apache 就有內建了,這個指令就是 ab 。

debian user 請使用 apt-get 安裝 apache2-utils 套件。

使用方法為: # ab -c 每個ip連線數 -n 總共多少ip 網址 # ab -c 5 -n 1000 http://127.0.0.1

對 apache server 要求 1000 個連線,每個連線對 apache 有五個 request ,這意思是像瀏覽一般網頁的行為一樣,會抓取圖檔和網頁的部份,而抓一個網頁差不多需要五個 request 。接著稍等一段時間,結果就會出來了。

靜態網頁:

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    1   0.8      1       4
Processing:     1    2   4.2      2     113
Waiting:        0    1   4.1      1     111
Total:          3    4   4.1      4     115

動態頁面,以我的 blog 來作測試。

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   5.9      0     103
Processing:  2491 3237 270.4   3148    4373
Waiting:     2351 3132 261.2   3055    4285
Total:       2491 3238 270.9   3148    4373

我們可以看到以單純的 html 檔, apache 回應超快,即時我使用的只有 p3-800 的 cpu ,但每個請求大概只要 0.03 秒至 0.1 秒左右,但是我抓取我的 blog 首頁,就差不多會多個十倍以上的速度了。這樣發現 lyceum 當作 blog 的首頁只有慘而已,看來要想一些辦法來加速了。

之前看到一篇文章,如果要加速 apache 的回應速度除了使用 mmcache 之外,把靜態和動態網頁分開不同的 apache 執行,並利用 proxy 指向不同的 apache ,這也是不錯的方法。

Write a Comment

Comment

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料