Centos6.5安装Apache ab性能测试工具

时间:2022-08-26 03:20:55

ab简洁:

ab是apache自带的压力测试工具,ab是apachebench命令的缩写。

ab不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型的服务器进行压力测试。

ab是一个httpd自带的很好用的压力测试工具,ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问。

可以用来测试apache的负载压力,也可以 用来测试nginx、lighthttp、tomcat、IIS等其它Web服务器的压力负载性能。

ab安装:

如果使用rpm安装包,直接使用yum --install rpm包名

如果不想安装apache但是又想使用ab命令,可以直接安装apache的工具包httpd-tools。

先cd到httpd-tools的所在目录,使用如下命令安装:

查看ab是否安装:

Centos6.5安装Apache ab性能测试工具

yum -y install httpd-tools

Centos6.5安装Apache ab性能测试工具

Centos6.5安装Apache ab性能测试工具

Centos6.5安装Apache ab性能测试工具

Centos6.5安装Apache ab性能测试工具

查看帮助文档

Centos6.5安装Apache ab性能测试工具

压测实例:

Centos6.5安装Apache ab性能测试工具

Centos6.5安装Apache ab性能测试工具

执行脚本后,cpu已经开始跑起来

Centos6.5安装Apache ab性能测试工具

正确的写法:

Centos6.5安装Apache ab性能测试工具

可以通过tomcat下的日志查看请求结果

Centos6.5安装Apache ab性能测试工具

注意:

在进行示例时使用的连接一般都是http://*.com,这种写法是没有带参数,如果你想测试一个写入的Case,那需要传递参数给后台,如何传递参数呢?

这里有一个登录的请求,需要登录名和密码,路径是这样的:

http://*/login.action?userName=admin&userPassWord=admin

使用该连接进行测试:ab -n 1 http://*/login.action?userName=admin&userPassWord=admin

发现由于存在特殊字符& ,虽然命令执行成功,但是并不能处理 & 后的参

他有两个参数:p(小写),T(大写),注意区分大小写,一个是用于指定POST请求时的参数文件,一个用于指定请求的类型Content-type,关于Content-type的类型,大家可以百度。

在AB命同级目录建立一个文件:para.txt,在里面写入要传递的参数:userName=admin&userPassWord=admin

指定请求类型为:application/x-www-form-urlencoded

完整的命令为:ab -n 1 -p para.txt -T application/x-www-form-urlencoded http://*/login.action

如此就可以将需要的两个参数传递到后台

主要参数:

-n:在测试会话中所执行的请求个数。默认时,仅执行一个请求。

-c:一次产生的请求个数。默认是一次一个。

-t:测试所进行的最大秒数。其内部隐含值是-n 50000,它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。

-p:包含了需要POST的数据的文件。

-P:对一个中转代理提供BASIC认证信任。用户名和密码由一个:隔开,并以base64编码形式发送。无论服务器是否需要(即, 是否发送了401认证需求代码),此字符串都会被发送。

-T:POST数据所使用的Content-type头信息。