簡介與安裝
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)apache拒絕訪問test aborted after 10 failures
apr_socket_connect():
使用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 非...