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

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第1张图片

最常用的两个参数就是-c、-n两个参数,上面列举的参数并不全,有兴趣的同学可以去其他博客看下参数详解;

 

 

三、ApacheBench的安装

ps:本篇只介绍linux下的安装方法,windows下的安装方法可以参考博客

https://blog.csdn.net/dongdong9223/article/details/49248979

安装目的:

  • 操作系统:CentOS 7.4

查看服务器系统版本号:cat /etc/redhat-release

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第2张图片

  • ApacheBench:2.3

查看ApacheBench版本:ab -V(这里的v要大写

 

 

1、linux下安装使用yum命令安装就可以了,可以安装Apache底下的工具包apache httpd

这个工具包中就包含工具ApacheBench,也就是说把这个工具包安装完成之后就可以使用ApacheBench的命令了

命令:yum -y install httpd-tools

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第3张图片

ps:当然使用这个命令缺不了要用到yum命令,很多服务器是默认没有安装yum命令的,这个时候要先安装yum命令在进行第一步操作,传送门:https://jingyan.baidu.com/article/ce09321bbde1de2bff858f9a.html

 

2、完成步骤1的操作就说明可以使用ApacheBench工具了,这个时候可以查看一下刚刚安装的ApacheBench版本信息了(命令见步骤1上方)

 

 

3、安装完成后可以使用命令【ab -】查看该工具的所有参数,具体参数对照请参考第二步参数解释:

 

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第4张图片

 

四、ApacheBench的使用

使用命令:ab [options] [http://]hostname[:port]/path

常用参数:

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第5张图片

示例:

  • 测试网址:http://www.baidu.com/
  • 请求数:100
  • 并发数:10
  • 命令:ab -n 100 -c 10 http://www.baidu.com/path

运行结果:

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第6张图片

五、响应参数释义

 

web性能压力测试工具之--linux环境下ApacheBench(ab)安装与使用详解_第7张图片

 

六、结语

其实ApacheBench在印象中都是做web页面性能测试的工具,似乎除了web页面在其他地方没有发力的地方,其实ApacheBench对接口也是可以进行性能测试的,具体内容可以参考https://blog.csdn.net/achang21/article/details/46380769

该篇博文比较详细介绍了如何使用ApacheBench对API进行性能测试,这里就不多讲了,后面在我的其他博客会介绍其他的性能测试工具;

 

你可能感兴趣的:(性能测试,常用工具,压力测试,性能测试,ApacheBench,web性能,性能工具)