八 ab壓力測試

2021-10-01 10:16:21 字數 3518 閱讀 4284

1、簡介

ab:apache benchmark是apache安裝包中自帶的壓力測試工具 ,簡單易用

2、安裝

yum install -y httpd-tools
3、引數說明

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

-c 即concurrency,用於指定的併發數。

-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 新增乙個基本的**認證資訊,使用者名稱和密碼之間用英文冒號隔開。

-x 指定要使用的埠號。

-v 列印版本號並退出。

-k 使用http的keepalive特性。

-d 不顯示百分比。

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

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

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

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

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

4、例項

#模擬1000個併發請求100000次

: myws/1.8 #伺服器軟體資訊

server hostname

: 10.0.0.131 #伺服器主機名

server port

: 80 #伺服器端口

document path

: /index.html #請求的uri

document length

: 612 bytes #請求返回的資料大小

concurrency level

: 1000 #併發數

time taken for tests

: 7.116 seconds #消耗總時間

complete requests

: 100000 #請求總次數

failed requests

: 0 #請求失敗次數

write errors

: 0 #網路連線寫入錯誤數

total transferred

: 84100000 bytes #傳輸總資料量

html transferred

: 61200000 bytes #html文件的總資料量

requests per second

: 14052.09 [#/sec] (mean) #平均每秒處理的請求數,qps反應伺服器吞吐量的重要資訊

time per request

: 71.164 [ms] (mean) #所有併發請求一次的時間

time per request

: 0.071 [ms] (mean, across all concurrent requests) #單個請求處理的平均時間

transfer rate

: 11540.83 [kbytes/sec] received #平均每秒獲取的資料長度

connection times (ms)

min mean[+/-sd] median max

connect

: 0 28 187.8 2 3010

processing

: 1 9 28.0 7 1637

waiting

: 0 7 27.9 5 1634

total

: 4 36 196.4 9 3027

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

50% 9 # 50%的請求在9ms內處理完

66% 10

75% 10

80% 10

90% 11

95% 12

98% 1011

99% 1019 # 99%的請求在1019ms內處理完

100% 3027 (longest request)

5、注意事項

測試機與被測試機要分開

不要對線上生產的伺服器做壓力測試,十分危險,可能引起宕機

併發過大伺服器會認為受到攻擊而拒絕,需要設定合理的併發與請求數,從而測試出準確的伺服器效能指標

ab 壓力測試

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

ab壓力測試

1.我的環境是windows下的phpstudy,進入到apache bin目錄裡面有個ab.exe,壓力測試命令如下 ab.exe c 200 n 1000 2.mysql.php 如下 正常的邏輯思維,壓力增大後,導致資料庫num欄位成為負數,將下面 貼上到自己 下測試即可。在test資料庫下,...

ab壓力測試

ab命令會建立多個併發訪問執行緒,模擬多個訪問者同時對某一url位址進行訪問。它的測試目標是基於url的,因此,它既可以用來測試apache的負載壓力,也可以測試nginx lighthttp tomcat iis等其它web伺服器的壓力。ab命令對發出負載的計算機要求很低,它既不會占用很高cpu,...