apache ab 壓力測試引數的計算方法

2021-08-29 02:18:18 字數 1939 閱讀 7369

-----------------------------apache-ab--壓力測試引數的計算方法--------------

server hostname

表示請求的url中的主機部分名稱,它來自於http請求資料的頭資訊,這裡我們請求的url是http://localhost/index.html,所以主機名為localhost,說明我們的請求是從web伺服器端發起的。

server port

表示被測試的web伺服器軟體的監聽埠,為了方便測試,我們後面會對多個不同的web伺服器軟體使用不同的監聽埠。

document path

表示請求的url中根絕對路徑,它同樣來自於http請求資料的頭資訊,通過它的字尾名,我們一般可以理解該請求的型別。

document length

表示http響應資料的正文長度。

concurrency level

表示併發使用者數,這是我們設定的引數。

time taken for tests

表示所有這些請求被處理完成花費的總時間。順便提一下,某些apache版本如2.2.4附帶的ab,對於這一統計項存在一些計算上的bug,當總請求數較少時,其統計的總時間會無法小於0.1s。

complete requests

表示總請求數,這是我們設定的相應引數。

failed requests

表示失敗的請求數,這裡的失敗是指請求的連線伺服器、傳送資料、接收資料等環節發生異常,以及無響應後超時的情況。對於超時時間的設定可以用ab的-t引數。

而如果接受到的http響應資料的頭資訊中含有2xx以外的狀態碼,則會在測試結果顯示另乙個名為「non-2xx responses」的統計項,用於統計這部分請求數,這些請求並不算是失敗的請求。

total transferred

表示所有請求的響應資料長度總和,包括每個http響應資料的頭資訊和正文資料的長度。注意這裡不包括http請求資料的長度,所以total

transferred代表了從web伺服器流向使用者pc的應用層資料總長度。通過使用ab的-v引數即可檢視詳細的http頭資訊。

html transferred

表示所有請求的響應資料中正文資料的總和,也就是減去了total transferred中http響應資料中頭資訊的長度。

requests per second

這便是我們重點關注的吞吐率,它等於:

complete requests / time taken for tests

time per request

這便是前面提到的使用者平均請求等待時間,它等於:

time taken for tests / (complete requests /concurrency level)

time per request?(across all concurrent requests)

這便是前面提到的伺服器平均請求處理時間,它等於:

time taken for tests / complete requests

這正是吞吐率的倒數。同時,它也等於:

time per request / concurrency level

transfer rate

表示這些請求在單位時間內從伺服器獲取的資料長度,它等於:

total transferred / time taken for tests

這個統計項可以很好的說明伺服器在處理能力達到限制時,其出口頻寬的需求量。

利用前面介紹的有關頻寬的知識,不難計算出結果。

percentage of the requests served within a certain time(ms)

這部分資料用於描述每個請求處理時間的分布情況,比如在以上測試結果中,80%請求的處理時間都不超過1ms,而99%的請求都不超過2ms。注意這裡的處理時間,是指前面的time per request,即對於單個使用者而言,平均每個請求處理的時間。

Apache ab引數 壓力測試

apache附帶的ab,它非常容易使用,ab可以直接在web伺服器本地發起測試請求。這至關重要,因為我們希望測試的伺服器的處理時間,而不包含資料的網路傳輸時間以及使用者pc本地的計算時間。需要清楚的是,ab進行一切測試的本質都是基於http,所以可以說它是對於web伺服器軟體的黑盒效能測試,它獲得的...

Apache ab引數 壓力測試

apache附帶的ab,它非常容易使用,ab可以直接在web伺服器本地發起測試請求。這至關重要,因為我們希望測試的伺服器的處理時間,而不包含資料的網路傳輸時間以及使用者pc本地的計算時間。需要清楚的是,ab進行一切測試的本質都是基於http,所以可以說它是對於web伺服器軟體的黑盒效能測試,它獲得的...

apache ab壓力測試

以前安裝好apache總是不知道該如何測試apache的效能,現在總算找到乙個測試工具了。就是apache自帶的測試工具ab apache benchmark 在apache的bin目錄下。格式 ab options http hostname port path 引數 n requests num...