Apache ab 的简单实用,apacheab简单实用


一、ab原理

       ab命令会创建多个并发线程,模拟多个用户去对同一个URL地址去访问。

二、ab安装

       安装apache后,bin目录下会自带ab.exe,如果安装的是tomcat则下载ab.exe直接放在bin目录下即可。

三、参数说明

       进入到ab 所在目录后,ab -help 可以查询到所有的参数说明。

      

       具体参数说明如下:

       -n     执行会话总数,默认为1个

       -c     每次的并发数,默认为1个

       -t      本次测试限制的总时间

       -p     传递时所带的参数,一般以txt文件形势存在

       -T     传递数据所用的头信息

       -v     设置信息显示的详细程度

       -w    以HTML的形式显示结果

       -i      执行head请求而不是get

       -x     设置<table>属性的字符串

       -y     设置<tr>属性的字符串

       -z     设置<td>属性的字符串

       -C    对请求附加一个cookie行,name=value的参数对形式

       -H    对请求附加一个头信息,用冒号分隔值和对

       -A    对服务器提供BASIC认证,无论服务器是否需要,都会被发送成功

       -P    对一个中转代理提供BASIC认证

       -X    使用代理服务器

       -V    显示版本号并退出

       -k     启用HTTP KEEPALIVE功能,可以在一会话中执行多个请求

       -d

       -S

       -g     把测试结果放入到一个“gnuplot”或TSV的文件中,第一行为标题

       -e     产生一个以逗号分隔的文件,包含了每个百分比下响应的请求时间

       -r    

       -h     显示使用方法

四、ab性能指标


五、注意事项

       1. apache ab判断是否响应成功之时判断2xx的响应代码,不接受服务器的返回结果,所以相比较来说,ab会比loadrunner并发数高,TPS大。

       2. ab测试的并发数与其所在机器的CPU的颗粒数有很大关系,颗粒数越大,测试结果所支持的并发数越大

六、带参数的性能测试

       比如账号密码参数,可以在ab命令的同级建一个txt文件,如test.txt,里面写上username=admin&password=admin

       完整命令:ab -n 100 -c 10 -p test.txt -T application/x-www-form-urlencoded http://*/*

七、实例报告

        1. 下图为50个并发,总数为100的结果

                

      

2. 下图为80个并发,总数为100的结果

      

      

3. 下图为90个并发,总数为100的结果

      

      

4. 下图为100个并发,总数为100的结果

     

5. 下图为50个并发,总数为120的结果

      

6. 多次测试结果图表

      

  100%响应时间 错误数 吞吐量 平均响应时间
总100,并50 1.358s 0 5.33 0.9383
总100,并80 1.953s 0 5.34 1.4975s
总100,并90 2.1159s 0 4.57 1.9689s
总100,并100 time out -- -- --
总120,并50 关闭连接 -- -- --

7. 结果分析

      1)根据性能需求判断平均响应时间是否在规定要求内,若无需求则遵守业界标准,一般业界网站的用户感受符合一个2-5-8标准,即2s以内响应良好,2-5s可以忍受,8s以上基本不可忍受。以此来看并发90以内,系统响应均表现良好.

      2)并发100时出现timeout,可能原因为:压力太大导致服务器阻塞超时,网络限制导致超时,服务器或中间件存在限制

      3)总数超过120关闭连接,可能原因为:服务器或中间件存在限制

相关内容

    暂无相关文章