1.ab简介
ab是apache自带的压力测试工具,是apachebench命令的缩写。ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器如nginx、tomcat、IIS等进行压力测试。
ab的原理:ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问。
2.ab的安装
sudo apt-get install apache2-utils
查询版本号
ab -V

命令参数查询
ab -help

在windows下安装
下载地址:Apache VS16 binaries and modules download (apachelounge.com)
解压后通过cmd命令进入路径\Apache24\bin下执行abs
(Windows下输入ab命令只能测试不带加密的http协议)

也可以直接设置一个ab的环境变量,这样就不需要每次都去切换路径了


3.ab的命令与操作
1.ab的常用参数
| 指令 | 含义 |
| -A | 指定连接服务器的基本的认证凭据 |
| -c | 指定一次并发向服务器发出请求数 |
| -C | 添加cookie |
| -g | 将测试结果输出为“gnuolot”文件 |
| -h | 显示帮助信息 |
| -H | 为请求追加一个额外的头 |
| -i | 使用“head”请求方式 |
| -k | 激活HTTP中的“keepAlive”特性 |
| -n | 指定测试会话使用的请求总数 |
| -p | 发送post请求时,指定包含数据的文件 |
| -q | 不显示进度百分比 |
| -t | 等待响应的最大时间 |
| -T | 使用POST数据时,设置内容类型头 |
| -v | 设置详细模式等级 |
| -w | 以HTML表格方式打印结果 |
| -x | 以表格方式输出时,设置表格的属性 |
| -X | 使用指定的代理服务器发送请求 |
| -y | 以表格方式输出时,设置表格属性 |
2.ab命令测试服务器
发送单个请求
ab https://www.baidu.com/

并发用户数100,总请求数1000
ab -n 1000 -c 100 https://www.baidu.com/

发送含有json的post请求
先将json在本地写好

再通过-p命令传入路径并通过-T命令将类型设置为json
ab -n 10 -c 2 -p 'post.txt' -T 'content-type:application/json' http://api.test.mi.com/mi_
trade/trade_center/api/order/cancelorder




















