ab工具進行壓力測試

2022-07-15 22:39:18 字數 3807 閱讀 2904

簡介與安裝

ab:apache benchmark,只要我們安裝了apache,就能夠在apache的安裝目錄中找到它.

yum | apt 安裝的apache  ab的目錄一般為/usr/bin 也可以通過 which ab 檢視

ab 不僅僅針對apache伺服器的**進行壓力測試,nginx、tomcat、iis等其他伺服器也可以進行壓力測試.

不能或不想安裝apache,也可以使用ab,安裝apache的工具包httpd-tools即可:

安裝ab -v //

檢測是否成功安裝

用法簡單說明

切換到 ab所在目錄    ab -help 檢視用法介紹

可以看出:使用方式為 

ab  [可選的引數]   要進行壓力測試的url

引數說明

-n  即requests,用於指定壓力測試總共的執行次數。

-t   即timelimit,等待響應的最大時間(單位:秒)。

-b  即windowsize,tcp傳送/接收的緩衝大小(單位:位元組)。

-p  即postfile,傳送post請求時需要上傳的檔案,此外還必須設定-t引數。

-u  即putfile,傳送put請求時需要上傳的檔案,此外還必須設定-t引數。

-v   即verbosity,指定列印幫助資訊的冗餘級別。

-w  以html**形式列印結果。

-i   使用head請求代替get請求。

-x  插入字串作為table標籤的屬性。

-y  插入字串作為tr標籤的屬性。

-z  插入字串作為td標籤的屬性。

-c  新增cookie資訊,例如:"apache=1234"(可以重複該引數選項以新增多個)。

-h  新增任意的請求頭,例如:"accept-encoding: gzip",請求頭將會新增在現有的多個請求頭之後(可以重複該引數選項以新增多個)。

-a  新增乙個基本的網路認證資訊,使用者名稱和密碼之間用英文冒號隔開。

-p  新增乙個基本的**認證資訊,使用者名稱和密碼之間用英文冒號隔開。

-v  列印版本號並退出。

-k  使用http的keepalive特性。

-d  不顯示百分比。

-s  不顯示預估和警告資訊。

-g  輸出結果資訊到gnuplot格式的檔案中。

-e  輸出結果資訊到csv格式的檔案中。

-r  指定接收到錯誤資訊時不退出程式。

-h  顯示用法資訊,其實就是ab -help

如:    ab -c 100 -n 1000 http://

server software: apache/2.4.18(伺服器軟體名稱及版本資訊)

server hostname: dev2.lystrong.cn(伺服器主機名)

server port: 80(伺服器端口)

document path: /(供測試的url路徑)

document length: 0 bytes(供測試的url返回的文件大小)

concurrency level: 100(併發數)

time taken for tests: 3.927 seconds(壓力測試消耗的總時間)

complete requests: 1000(壓力測試的總次數)

failed requests: 0(失敗的請求數)

total transferred: 225000 bytes(傳輸的總資料量)

html transferred: 0 bytes(html文件總資料量)

requests per second: 254.67 [#/sec] (mean)(平均每秒的請求數)

time per request: 392.661 [ms] (mean)(所有併發使用者請求一次的平均時間 此處為100)

time per request: 3.927 [ms] (mean, across all concurrent requests)(單個使用者請求一次的平均時間)

transfer rate: 55.96 [kbytes/sec] received(傳輸速率  單位 :kb/s)

connection times (ms)

min mean[+/-sd] median max

connect: 3 17 108.7 5 1005

processing: 8 235 201.5 239 3409

waiting: 8 234 200.9 239 3409

total: 13 252 234.2 243 3413

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

50% 243

66% 314

75% 326

80% 332

90% 345

95% 507

98% 966

99% 1337

100% 3413 (longest request)

可以測試很高的總請求次數和高併發數,模擬高壓力情況,apache拒絕訪問 或伺服器開啟檔案太多

出現too many open files (24)主要是因為檔案開啟數的限制,預設情況下是1024,可以使用ulimit -n檢視,可以看出系統預設open files的1024不足以支撐測試,

使用  

ulimit -shn 65536  //臨時更改檔案開啟數

出現:

benchmarking dev2.lystrong.cn (be patient)  

test aborted after 10 failures

apr_socket_connect():

apache拒絕訪問

使用AB壓力測試工具進行系統壓力測試

ab是apache自帶的乙個很好用的壓力測試工具,當安裝完apache的時候,就可以在bin下面找到ab linux mac windows 1 我們可以模擬100個併發使用者,對乙個頁面傳送1000個請求 ab n1000 c100 其中 n代表請求數,c代表併發數 返回結果 首先是apache的...

使用Apache的ab工具進行壓力測試

apache附帶的ab工具 本機使用的php環境是wamp整合環境,ab工具位於d wamp bin apache apache2.2.21 bin 非常容易使用,ab可以直接在web伺服器本地發起測試請求,這至關重要,因為有些時候我們需要測試的僅僅是伺服器的處理效能,並不想摻雜著網路傳輸時間的影響...

使用Apache的ab工具進行壓力測試

ab命令原理 apache的ab命令模擬多執行緒併發請求,測試伺服器負載壓力,也可以測試nginx lighthttp iis等其它web伺服器的壓力。apache附帶的ab工具 使用的php環境是wamp整合環境,ab工具位於d wamp bin apache apache2.2.21 bin 非...