ab压测工具 是一款 跨平台 的 轻量级 的压测工具,本文我们将简单介绍下 ab压测工具 的使用方法。
centos安装ab压测工具
yum -y install httpd-tools
常用命令
查看版本
ab -V
帮助
ab -h
并发测试
并发5,测试100个请求,请求目标地址百度
ab -c 5 -n 100 https://www.baidu.com/
主要使用参数
-c
即concurrency
用于指定的并发数。
-n
即requests
用于指定压力测试总共的执行次数。
-t
即timelimit
等待响应的最大时间(单位:秒)。
-b
即windowsize
TCP发送/接收的缓冲大小(单位:字节)。-p
即postfile
发送POST请求时需要上传的文件,此外还必须设置-T
参数。-u
即putfile
发送PUT请求时需要上传的文件,此外还必须设置-T
参数。-T
即content-type
用于设置Content-Type请求头信息,例如:application/x-www-form-urlencoded,默认值为text/plain。-v
即verbosity
指定打印帮助信息的冗余级别。-w
以HTML表格形式打印结果。-i
使用HEAD请求代替GET请求。-x
插入字符串作为table标签的属性。-y
插入字符串作为tr标签的属性。-z
插入字符串作为td标签的属性。-C
添加cookie信息,例如:"Apache=1234"(可以重复该参数选项以添加多个)。-H
添加任意的请求头,例如:"Accept-Encoding: gzip",请求头将会添加在现有的多个请求头之后(可以重复该参数选项以添加多个)。-A
添加一个基本的网络认证信息,用户名和密码之间用英文冒号隔开。-P
添加一个基本的代理认证信息,用户名和密码之间用英文冒号隔开。-X
指定使用的和端口号,例如:"126.10.10.3:88"。-V
打印版本号并退出。-k
使用HTTP的KeepAlive特性。-d
不显示百分比。-S
不显示预估和警告信息。-g
输出结果信息到gnuplot格式的文件中。-e
输出结果信息到CSV格式的文件中。-r
指定接收到错误信息时不退出程序。-h
显示用法信息,其实就是ab -help。
结果参数说明
Server Software: BWS/1.1 # 目标使用服务
Server Hostname: www.baidu.com # 目标主机地址
Server Port: 443 # 目标端口
SSL/TLS Protocol: TLSv1.2,ECDHE-RSA-AES128-GCM-SHA256,2048,128 # 目标使用协议
Document Path: / # 请求路径
Document Length: 227 bytes # 请求长度
Concurrency Level: 5 # 并发数
Time taken for tests: 1.953 seconds # 测试时间
Complete requests: 100 # 完成请求数
Failed requests: 0 # 失败请求数
Write errors: 0 # 警告请求数
Total transferred: 111080 bytes # 总转移字节
HTML transferred: 22700 bytes # html总转移字节
Requests per second: 51.20 [#/sec] (mean) # 每秒rps
Time per request: 97.651 [ms] (mean) # 平均请求时间
Time per request: 19.530 [ms] (mean, across all concurrent requests) # 所有平均请求时间
Transfer rate: 55.54 [Kbytes/sec] received # 转换率
Connection Times (ms) # 连接时间
min mean[+/-sd] median max
Connect: 47 69 14.0 67 104 # 连接
Processing: 16 24 7.1 23 77 # 处理
Waiting: 16 24 7.1 23 77 # 等待
Total: 63 93 20.0 89 173 # 全部
# 一定时间内请求的百分比
Percentage of the requests served within a certain time (ms)
50% 89
66% 101
75% 105
80% 107
90% 125
95% 130
98% 136
99% 173
100% 173 (longest request) # 最长的请求