测试工具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-2024 CODEPRJ.COM