測試工具ab(apache bench)


在使用ab壓力測試工具之前,首先我們要了解幾個關於壓力測試的概念

吞吐率

概念:服務器並發處理能力的量化描述,單位是reqs/s,指的是某個並發用戶數下單位時間內處理的請求數。某個並發用戶數下單位時間內能處理的最大請求數,稱之為最大吞吐率。

計算公式:總請求數 / 處理完成這些請求數所花費的時間,即

Request per second = Complete requests / Time taken for tests

並發連接數

概念:某個時刻服務器所接受的請求數目,簡單的講,就是一個會話。

並發用戶數

概念:要注意區分這個概念和並發連接數之間的區別,一個用戶可能同時會產生多個會話,也即連接數。

用戶平均請求等待時間

計算公式:處理完成所有請求數所花費的時間/ (總請求數 / 並發用戶數),即

Time per request = Time taken for tests /( Complete requests / Concurrency Level)

服務器平均請求等待時間

計算公式:處理完成所有請求數所花費的時間 / 總請求數,即

Time taken for / testsComplete requests

可以看到,它是吞吐率的倒數。

同時,它也=用戶平均請求等待時間/並發用戶數,即

Time per request / Concurrency Level

ab工具簡介

ab 全稱為:apache bench

在官網上的解釋如下:

ab是Apache超文本傳輸協議(HTTP)的性能測試工具。其設計意圖是描繪當前所安裝的Apache的執行性能,主要是顯示你安裝的Apache每秒可以處理多少個請求。

其他網站解釋:

ab是apache自帶的壓力測試工具。ab非常實用,它不僅可以對apache服務器進行網站訪問壓力測試,也可以對或其它類型的服務器進行壓力測試。比如nginx、tomcat、IIS等。

使用ab壓力測試工具

注:

本次使用ab壓力測試工具在虛擬機上使用,若操作者pc沒有安裝虛擬機,參考https://blog.csdn.net/guan_xiao_nan/article/details/79427938?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522164420419516780271593273%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=164420419516780271593273&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-79427938.first_rank_v2_pc_rank_v29&utm_term=%E7%94%B5%E8%84%91%E5%AE%89%E8%A3%85vmware&spm=1018.2226.3001.4187 進行下載

虛擬機配置鏈接

https://blog.csdn.net/davidhzq/article/details/101494147?ops_request_misc=&request_id=&biz_id=102&utm_term=vmware%E8%BF%9B%E8%A1%8C%E9%85%8D%E7%BD%AE&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-3-101494147.first_rank_v2_pc_rank_v29&spm=1018.2226.3001.4187

 Mac安裝配置鏈接

https://juejin.cn/post/6910018134191636488#heading-8

 注:

如果沒有鏡像可以找我要

以上就是安裝和配置,完成以后進行ab壓力測試的安裝

進入虛擬機系統 右鍵 找到 打開終端

輸入安裝指令 yum -y install httpd-tools

安裝成功效果圖如下

 

 ab -v 查看ab版本

 

ab --help

 

壓力測試指令

ab -n1000 -c 10 壓力測試網址/  結尾的/一定要加

ab -n1000 -c 10 http://www.fuqicloud.com/

 這里用公司網站進行壓力測試 ,-n訪問1000次, -c並發10個這里就相當於10個用戶

測試效果如下

 

 詳細解釋如下:

Server Software:        BWS/1.1                 #服務器軟件

Server Hostname:        www.baidu.com           #域名

Server Port:            80                      #請求端口Document Path:          /                       #文件路徑

Document Length:        343480 bytes            #頁面字節數
Concurrency Level:      10                      #請求的並發數
Time taken for tests:   110.401 seconds         #總訪問時間
Complete requests:      1000                    #請求成功數量
Failed requests:        981                     #請求失敗數量
Total transferred:      344707298 bytes         #請求總數據大小(包括header頭信息)
HTML transferred:       343519184 bytes         #html頁面實際總字節數
Requests per second:    9.06 [#/sec] (mean)     #每秒多少請求,這個是非常重要的參數數值,服務器的吞吐量
Time per request:       1104.006 [ms] (mean)    #用戶平均請求等待時間
Time per request:       110.401 [ms] (mean, across all concurrent requests)
# 服務器平均處理時間,也就是服務器吞吐量的倒數
Transfer rate:          3049.15 [Kbytes/sec] received
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:       37  103  90.9     77    1357
Processing:   243  992 930.7    705    8814
Waiting:       39  116  89.5     90     800
Total:        298 1094 922.1    807    8859
Percentage of the requests served within a certain time (ms)
  50%    807       50%用戶請求在807ms內返回

  66%    939       66%用戶請求在939ms內返回
 
  75%   1049       75%用戶請求在1049ms內返回

  80%   1180       80%用戶請求在1180ms內返回

  90%   1834       90%用戶請求在1834ms內返回

  95%   3014       95%用戶請求在3014ms內返回

  98%   4269       98%用戶請求在4269ms內返回

  99%   5448       99%用戶請求在5448ms內返回

 100%   8859 (longest request)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM