如何利用ApacheBench进行服务器压力测试

如何利用ApacheBench进行服务器压力测试,第1张

Apache服务器自带了ab压力测试工具,可以用来测试网站性能,使用简单方便。

工具/原料

Apache

方法/步骤

打开Apache服务器的安装路径,在bin目录中有一个abexe的可执行程序,就是我们要介绍的压力测试工具。

在Windows系统的命令行下,进入abexe程序所在目录,执行abexe程序。注意直接双击无法正确运行。

执行ab命令成功后,可以看到如图提示。该帮助很清楚详细的介绍了ab的用法以及各个参数的含义。

ab 的用法是:ab [options] [http://]hostname[:port]/path

例如:ab -n 5000 -c 200 http://localhost/indexphp

上例表示总共访问http://localhost/indexphp这个脚本5000次,200并发同时执行。

ab常用参数的介绍:

-n :总共的请求执行数,缺省是1;

-c: 并发数,缺省是1;

-t:测试所进行的总时间,秒为单位,缺省50000s

-p:POST时的数据文件

-w: 以HTML表的格式输出结果

执行测试用例:ab -n 1000 -c 100 -w http://localhost/indexphp >>c:\1html

上面的测试用例表示100并发的情况下,共测试访问indexphp脚本1000次,并将测试结果保存到c:\1html文件中。

测试报告如图,可知在该100并发访问的情况下,共测试访问1000次,失败了852次。可知该脚本在此环境无法满足100并发访问的要求。

修改参数继续测试。测试并发50和30两种情况,由测试报告得知,在并发访问降到30时,错误的访问数降为39。

步骤阅读

网站服务器的压力测试我觉得主要有一些几点。

1协议这边基本上以http或者https为主了,如果使用其他协议需要分析其打解包的方法。

2要产生一定的压力,压力源这边一定要有保证。一般都是用机器人来模拟压力,关于机器人的逻辑可以根据具体业务来开发。

3需要观察在一定压力下,服务器的各项性能指标(cpu,内存,IO,网络流量)进行观察,比如内存是否有泄漏,cpu利用率过高的情况。

4压力测试应该是一个持续性的过程,在这个过程中需要统计服务器的性能数据,包括tps,以及机器的负载情况等。据此可以分析服务器的瓶颈在何处,后续可以针对优化。

5目前大部分的服务器都部署在Linux系统上,测试同学还需要掌握相关的Linux命令以便可以更好的测试。

如果你觉得前面的太麻烦,可以来WeTest服务器压力测试高并发,实时性能报表,专家级性能优化建议,目前我们正在做网站压测这一块,你要做的仅仅是填下被测的URL即可,压力源、数据统计这些琐碎的工作交给我们就行了。

性能测试就是压力测试,手机方面的其实和PC方面的差距不大,重点就是大量手机调用接口对服务器的压力,所以测试的重点还是在服务器上,你可以用Jmeter模拟接口报文,来并发压服务器,看服务器的响应和处理能力。单个手机毕竟是一个人在用,所以一般不用关心手机端的问题。手机端主要的就是功能没什么问题,只要app玩着玩着不要崩溃掉就行了

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何利用ApacheBench进行服务器压力测试

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情