ab一款好用的压力测试工具

一、介绍

ab 命令会创建很多的并发访问线程,模拟多个访问者同时对某一 URL 地址进行访问。它的测试目标是基于 URL 的,因此,既可以用来测试 Apache 的负载压力,也可以测试 nginx、lighthttp、tomcat、IIS 等其它 Web 服务器的压力。

ab 命令对发出负载的计算机要求很低,既不会占用很高 CPU,也不会占用很多内存,但却会给目标服务器造成巨大的负载,其原理类似 CC×××。自己测试使用也须注意,否则一次上太多的负载,可能造成目标服务器因资源耗完,严重时甚至导致死机。

二、安装

ab 支持多平台部署,安装起来也相对较为简单。如下:

2.1 Linux

linux 环境安装比较简单,一行命令即可

yum -y install httpd-tools

2.2 Windows

windows 环境需要先下载压缩包,在压缩包内执行命令即可。官网下载
在这里插入图片描述
在这里插入图片描述

三、案例

这里我们压测一个部署在容器内的接口,这里我们测试 7000 并发,100000 请求

命令在 linux 与 windows 环境通用。
如果get请求带参数,就在url部分加上双引号包起来。

 ab -c 7000  -n 100000  "http://192.168.200.167:8089/Wikibit/Advertisement?type=38&app=12&ver=121" 

在这里插入图片描述
可以看到,在压测时 内存、cpu 、网络出口都比较活跃
在这里插入图片描述

-c 并发数量
-n 请求总数

这里举例比较简单,ab 有许多参数,正所谓别人领进门,修行在个人。

四、返回说明

各项指标会因为网络、服务器性能、等指标而不同

标题说明
Server Software:Kestrelweb服务器
Server Hostname:192.168.200.167请求的服务器
Server Port:8089请求的端口
Document Path:Wikibit/Advertisement?type=38&app=12&ver=121 请求路径
Document Length:25 bytes页面大小
Concurrency Level:7000并发数
Time taken for tests:227.346共使用了多少时间
Complete requests:100000成功请求数
Failed requests:0失败请求数
Write errors:0错误次数
Total transferred:230400000 bytes总共传输字节数,包含http的头信息等
HTML transferred:214300000 byteshtml字节数,实际的页面传递字节数
Requests per second:439.86 [#/sec] (mean)每秒多少请求,这个是非常重要的参数数值,服务器的吞吐量
Time per request:15914.231 [ms] (mean)用户平均请求等待时间
Time per request:2.273 [ms] (mean, across all concurrent requests)服务器平均处理时间,也就是服务器吞吐量的倒数
Transfer rate:989.68 [Kbytes/sec] received每秒获取的数据长度

Percentage of the requests served within a certain time (ms)

50%1601250%的请求在25ms内返回
66%1688760%的请求在26ms内返回
75%
80%
90%
95%
98%
99%
100%
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟厚非

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值