压测工具ab

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 secondTime per requestTransfer rate等指标可以用来衡量服务器的性能和响应速度

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ab是Apache HTTP服务器自带的一个压测工具,也可以独立使用。以下是ab的用法和一个简单的案例: 1. 安装ab ab通常与Apache HTTP服务器一起安装,可以通过以下命令确认ab是否已经安装: ``` ab -V ``` 如果输出包含"ApacheBench"字样,则表示ab已经安装。 如果没有安装,则可以通过以下命令安装: Ubuntu/Debian系统: ``` sudo apt-get install apache2-utils ``` CentOS/RHEL系统: ``` sudo yum install httpd-tools ``` 2. 使用ab进行压测 以下是一个例子: ``` ab -n 1000 -c 100 http://localhost:8080/index.html ``` 这条命令表示发起1000个请求,每次并发100个请求,访问http://localhost:8080/index.html页面,并输出压测结果。 3. 压测结果分析 ab的输出结果包含三个部分:请求的数量、请求的吞吐量和请求的延迟。其中,请求的数量和吞吐量可以直接用于评估系统的性能,而请求的延迟则可以用于优化系统的性能。 例如,以下是一条ab的输出结果: ``` Concurrency Level: 100 Time taken for tests: 2.256 seconds Complete requests: 1000 Failed requests: 0 Total transferred: 130000 bytes HTML transferred: 11000 bytes Requests per second: 443.72 [#/sec] (mean) Time per request: 225.602 [ms] (mean) Time per request: 2.256 [ms] (mean, across all concurrent requests) Transfer rate: 56.24 [Kbytes/sec] received ``` 其中,Requests per second表示每秒钟处理的请求数量,Time per request表示每个请求的平均延迟。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值