我正在用apache基準測試PHP應用程序。我的本地機器上有服務器。我運行以下命令:Apache基準測試:總平均毫秒數表示什麼?
ab -n 100 -c 10 http://my-domain.local/
而得到這樣的:
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 3 3.7 2 8
Processing: 311 734 276.1 756 1333
Waiting: 310 722 273.6 750 1330
Total: 311 737 278.9 764 1341
但是,如果我刷新頁面http://my-domain.local/我發現在我的瀏覽器,它需要大量的時間超過737毫秒(平均是AB報告)加載頁面(大約3000-4000毫秒)。我可以多次重複,並且在瀏覽器中加載頁面至少需要3000毫秒。
我測試了另一個較重的頁面(瀏覽器中的頁面加載需要8-10秒)。我用了1併發來模擬一個用戶加載頁面:
ab -n 100 -c 1 http://my-domain.local/heavy-page/
而且結果在這裏:
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.1 0 1
Processing: 17 20 4.7 18 46
Waiting: 16 20 4.6 18 46
Total: 17 20 4.7 18 46
那麼,是什麼在AB結果共行實際上告訴?顯然,這不是瀏覽器加載網頁的毫秒數。從瀏覽器加載頁面(X)所需的毫秒數是線性依賴於總平均毫秒數ab report(Y)的數量?所以如果我能夠減少Y的一半,我是否也減少了X的一半?
(我也不確定Processing,Waiting和Total的含義)。
由於我再次遇到問題,我將重新打開此問題。 最近我安裝了清漆。 我跑AB這樣的: AB -n 100 http://my-domain.local/ 阿帕奇板凳報告非常快的響應時間:
Requests per second: 462.92 [#/sec] (mean)
Time per request: 2.160 [ms] (mean)
Time per request: 2.160 [ms] (mean, across all concurrent requests)
Transfer rate: 6131.37 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 1 2 2.3 1 13
Waiting: 0 1 2.0 1 12
Total: 1 2 2.3 1 13
所以每個請求的時間大約是2.2毫秒。當我瀏覽網站時(作爲匿名用戶),頁面加載時間大約爲1.5秒。
這是一張來自Firebug net tab的圖片。正如你所看到的,我的瀏覽器正在等待1.68秒讓我的網站響應。爲什麼這個數字比請求時間報告大得多?
瀏覽器和服務器都在我的本地機器上運行。我測試了另一頁,並相應地更新了我的原始問題。 – jjei