web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解
一、前言
之前写过一篇压力测试工具locust的入门使用教程,也是我日常测试中比较常用的一款工具,它的好处就是可以扩展,可以自己定义脚本运行的行为准则,没有那么多的条条框框,而且依赖的是python的编写框架与各种开源包,相比于jmeter显得更加的轻量级,从它自己使用的协程(微线程)就可以看出来,那么本篇就来介绍另一款测试工具--ApacheBench,简称ab;
如果说测试过程中并没有自己定义脚本的需求,只是临时调用工具检查一下web服务器的性能,那么ab就再合适不过了,因为ab本身属于Apache,只是apache工具包中的其中一种工具,缺点就是只能定向的查看性能指标而无法自定义它的行为准则,优点就是简单、便捷
二、ApacheBench命令原理与相关参数
1、运行原理
ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力
2、相关参数(这里把ab所使用的基本参数都列出来,方便大家使用的时候方便对照)
格式:ab [options] [http://]hostname[:port]/path
最常用的两个参数就是-c、-n两个参数,上面列举的参数并不全,有兴趣的同学可以去其他博客看下参数详解;
三、ApacheBench的安装
ps:本篇只介绍linux下的安装方法,windows下的安装方法可以参考博客
https://blog.****.net/dongdong9223/article/details/49248979
安装目的:
- 操作系统:CentOS 7.4
查看服务器系统版本号:cat /etc/redhat-release
- ApacheBench:2.3
查看ApacheBench版本:ab -V(这里的v要大写)
1、linux下安装使用yum命令安装就可以了,可以安装Apache底下的工具包apache httpd
这个工具包中就包含工具ApacheBench,也就是说把这个工具包安装完成之后就可以使用ApacheBench的命令了
命令:yum -y install httpd-tools
ps:当然使用这个命令缺不了要用到yum命令,很多服务器是默认没有安装yum命令的,这个时候要先安装yum命令在进行第一步操作,传送门:https://jingyan.baidu.com/article/ce09321bbde1de2bff858f9a.html
2、完成步骤1的操作就说明可以使用ApacheBench工具了,这个时候可以查看一下刚刚安装的ApacheBench版本信息了(命令见步骤1上方)
3、安装完成后可以使用命令【ab -】查看该工具的所有参数,具体参数对照请参考第二步参数解释:
四、ApacheBench的使用
使用命令:ab [options] [http://]hostname[:port]/path
常用参数:
示例:
- 测试网址:http://www.baidu.com/
- 请求数:100
- 并发数:10
- 命令:ab -n 100 -c 10 http://www.baidu.com/path
运行结果:
五、响应参数释义
六、结语
其实ApacheBench在印象中都是做web页面性能测试的工具,似乎除了web页面在其他地方没有发力的地方,其实ApacheBench对接口也是可以进行性能测试的,具体内容可以参考https://blog.****.net/achang21/article/details/46380769
该篇博文比较详细介绍了如何使用ApacheBench对API进行性能测试,这里就不多讲了,后面在我的其他博客会介绍其他的性能测试工具;