在任意目錄下執行該命令:yum -y install httpd-tools
測試一下ab是否安裝成功:ab -v
使用ab對**進行測試
ab -n 10000 -c 100
-n 請求的次數
-c 併發數
有關ab命令的使用,我們可以通過幫助命令進行檢視。如下:
下面我們對這些引數,進行相關說明。如下:
-n在測試會話中所執行的請求個數。預設時,僅執行乙個請求。
-c一次產生的請求個數。預設是一次乙個。
-t測試所進行的最大秒數。其內部隱含值是-n 50000,它可以使對伺服器的測試限制在乙個固定的總時間以內。預設時,沒有時間限制。
-p包含了需要post的資料的檔案。
-p對乙個中轉**提供basic認證信任。使用者名稱和密碼由乙個:隔開,並以base64編碼形式傳送。無論伺服器是否需要(即, 是否傳送了401認證需求**),此字串都會被傳送。
-t post資料所使用的content-type頭資訊。
-v設定顯示資訊的詳細程度-4或更大值會顯示頭資訊,3或更大值可以顯示響應**(404,200等),2或更大值可以顯示警告和其他資訊。
-v顯示版本號並退出。
-w以html表的格式輸出結果。預設時,它是白色背景的兩列寬度的一張表。
-i執行head請求,而不是get。
-x設定屬性的字串。
-x對請求使用**伺服器。
-y設定屬性的字串。
-z設定屬性的字串。
-c對請求附加乙個cookie:行。其典型形式是name=value的乙個引數對,此引數可以重複。
-h對請求附加額外的頭資訊。此引數的典型形式是乙個有效的頭資訊行,其中包含了以冒號分隔的字段和值的對(如,"accept-encoding:zip/zop;8bit")。
-a對伺服器提供basic認證信任。使用者名稱和密碼由乙個:隔開,並以base64編碼形式傳送。無論伺服器是否需要(即,是否傳送了401認證需求**),此字串都會被傳送。
-h顯示使用方法。
-d不顯示"percentage served within xx [ms] table"的訊息(為以前的版本提供支援)。
-e產生乙個以逗號分隔的(csv)檔案,其中包含了處理每個相應百分比的請求所需要(從1%到100%)的相應百分比的(以微妙為單位)時間。由於這種格式已經「二進位製化」,所以比'gnuplot'格式更有用。
-g把所有測試結果寫入乙個'gnuplot'或者tsv(以tab分隔的)檔案。此檔案可以方便地匯入到gnuplot,idl,mathematica,igor甚至excel中。其中的第一行為標題。
-i執行head請求,而不是get。
-k啟用http keepalive功能,即在乙個http會話中執行多個請求。預設時,不啟用keepalive功能。
-q如果處理的請求數大於150,ab每處理大約10%或者100個請求時,會在stderr輸出乙個進度計數。此-q標記可以抑制這些資訊。
在進行效能測試過程中有幾個指標比較重要:
1、吞吐率(requests per second)
伺服器併發處理能力的量化描述,單位是reqs/s,指的是在某個併發使用者數下單位時間內處理的請求數。某個併發使用者數下單位時間內能處理的最大請求數,稱之為最大吞吐率。
記住:吞吐率是基於併發使用者數的。這句話代表了兩個含義:
a、吞吐率和併發使用者數相關
b、不同的併發使用者數下,吞吐率一般是不同的
計算公式:總請求數/處理完成這些請求數所花費的時間,即
request per second=complete requests/time taken for tests
必須要說明的是,這個數值表示當前機器的整體效能,值越大越好。
2、併發連線數(the number of concurrent connections)
併發連線數指的是某個時刻伺服器所接受的請求數目,簡單的講,就是乙個會話。
3、併發使用者數(concurrency level)
要注意區分這個概念和併發連線數之間的區別,乙個使用者可能同時會產生多個會話,也即連線數。在http/1.1下,ie7支援兩個併發連線,ie8支援6個併發連線,firefox3支援4個併發連線,所以相應的,我們的併發使用者數就得除以這個基數。
4、使用者平均請求等待時間(time per request)
time per request=time taken for tests/(complete requests/concurrency level)
5、伺服器平均請求等待時間(time per request:across all concurrent requests)
time taken for/testscomplete requests
可以看到,它是吞吐率的倒數。
time per request/concurrency level
ab測試工具
1.apache ab測試工具 輸入命令 ab n 100 c 10 其中 n表示請求數,c表示併發數 報告分析 concurrency level 100 併發請求數 time taken for tests 50.872 seconds 整個測試持續的時間 complete requests 1...
壓力測試工具 ab工具
在學習ab工具之前,我們需了解幾個關於壓力測試的概念 吞吐率 requests per second 概念 伺服器併發處理能力的量化描述,單位是reqs s,指的是某個併發使用者數下單位時間內處理的請求數。某個併發使用者數下單位時間內能處理的最大請求數,稱之為最大吞吐率。計算公式 總請求數 處理完成...
Mac 使用ab效能測試工具
1.在mac中配置apache 啟動apache,開啟終端 sudo apachectl v如下顯示apache的版本 sudo apachectl start這樣apache就啟動了。開啟safari瀏覽器位址列輸入 http localhost 可以看到內容為 it works 的頁面 設定虛擬...