1.前言
ab是centos的一款压测工具,主要作用就是模拟大量用户的访问,测试接口最大的可承受值
2.安装使用
使用yum安装
yum -y install httpd-tools
查看是否安装成功
ab -V
ab压测各项参数说明
-n
:指定要执行的请求数量。例如,-n 1000
表示执行1000个请求。
-c
:指定并发请求数量。例如,-c 100
表示同时发起100个并发请求。
-t
:指定测试的最大持续时间(以秒为单位)。例如,-t 60
表示测试持续60秒。
-k
:启用HTTP Keep-Alive功能,允许多个请求复用同一个TCP连接。
-p
:指定包含POST请求数据的文件。例如,-p post_data.txt
表示使用 post_data.txt 文件中的数据进行POST请求。
-H
:添加自定义的HTTP请求头。例如,-H "Authorization: Bearer abc123"
表示添加自定义的Authorization头。
-A
:设置认证信息,用于进行HTTP基本认证。例如,-A username:password
表示使用指定的用户名和密码进行认证。
-T
:设置Content-Type头,用于POST请求的数据类型。例如,-T application/json
表示设置Content-Type为JSON。
-g
:生成CSV格式的结果文件,用于后续分析和报告。
-e
:输出每个请求的时间指标,包括响应时间、传输速度等。
接口压测
执行1000个请求,同时并发为100,持续时间60s,并输出每个请求的时间到1.txt文件中
ab -n 1000 -c 100 -t 60 -e 1.txt 10.1.60.114/
Server Software
:目标服务器所使用的Web服务器软件。
Server Hostname
:目标服务器的主机名。
Server Port
:目标服务器的端口号。
Document Path
:测试请求的文档路径。
Document Length
:目标文档的长度。
Concurrency Level
:并发请求数量。
Time taken for tests
:总共执行测试的时间。
Complete requests
:成功完成的请求数量。
Failed requests
:失败的请求数量。
Non-2xx responses
:非2xx状态码的响应数量。
Total transferred
:传输的总数据量。
HTML transferred
:传输的HTML数据量。
Requests per second
:每秒请求数量。
Time per request
:平均每个请求的处理时间。
Transfer rate
:传输速率。
其中,Requests per second
、Time per request
和Transfer rate
等指标可以用来衡量服务器的性能和响应速度