PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

ab是apache自带的网站压力测试工具,能够测试网站在一定时间内的发生高并发时的反应。

 

使用

1.进入apache的bin文件夹

2.模拟并发级别为100,请求数为1000个的api数据请求数量测试

PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

ab.exe -c 100 -n 1000 http://www.test.com/

测试结果如下

完成进度

PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

响应概要信息

PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

 

 

 

压力测试结果

PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

 

整体统计信息

平均到每个请求的时间消耗

PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

 

响应时间的分区统计

PHP测试与优化(1)-- Apache自带的压力测试工具ab(apache bench) - 简单使用

 

注意

ab主要使用的两个选项就是-n和-c。其他选项使用命令 ab -h 进行查看。

URL最后一定要补充一个"/",如:http://www.test.com/

 
 
结论:
 
一个公式可以表示:响应时间=网络响应时间+应用程序响应时间。标准可参考国外的3/5/10原则:
(1)在3秒钟之内,页面给予用户响应并有所显示,可认为是“很不错的”;
(2)在3~5秒钟内,页面给予用户响应并有所显示,可认为是“好的”;
(3)在5~10秒钟内,页面给予用户响应并有所显示,可认为是“勉强接受的”;
(4)超过10秒就让人有点不耐烦了,用户很可能不会继续等待下去;
 
所以
 
一个测试网站在你预估正常情况下的请求数与并发量的模拟测试,
结果如果80%的请求完成率在3秒以内,就代表访问页面的性能为优秀;
结果如果80%的请求完成率在5秒以内,就代表访问页面的性能为良好;
结果如果80%的请求完成率在10秒以内,就代表访问页面的性能为中;
结果如果80%的请求完成率在10秒以上,就代表访问页面的性能为差。