PHPstudy用Apache的ab工具测试实例详解
PHPstudy自带的ab压力测试
ab.exe是apache自带的网站压力测试工具,能够测试网站在一定时间内的发生高并发时的反应。
使用Apache的ab.exe【以PHPstudy的Apache为例】
1.使用命令行工具,进入apache的bin文件夹
cd D:\phpStudy\PHPTutorial\Apache\bin
2.模拟并发级别为100,请求数为1000个的api数据请求数量测试
注意:若报“ab.exe: invalid URL”错误,是因为请求地址没有加上‘/’。
Server Software: nginx # 表示被测试的Web服务器软件名称
Server Hostname: textlaravel.cc # 表示请求的URL主机名
Server Port: 80 # 表示被测试的Web服务器软件的监听端口Document Path: /goodsstart/ # 表示请求的URL中的根绝对路径,通过该文件的后缀名,我们一般可以了解该请求的类型
Document Length: 21 bytes # 表示HTTP响应数据的正文长度Concurrency Level: 1 # 表示并发用户数,这是我们设置的参数之一
Time taken for tests: 8.743 seconds # 所有这些请求处理完成所花费的时间
Complete requests: 1 # 完成请求数
Failed requests: 0 # 失败请求数
Total transferred: 174 bytes # 网络总传输量
HTML transferred: 21 bytes # HTML内容传输量
Requests per second: 0.11 [#/sec] (mean) # 吞吐量-每秒请求数
Time per request: 8743.356 [ms] (mean) # 服务器收到请求,响应页面要花费的时间
Time per request: 8743.356 [ms] (mean, across all concurrent requests) # 并发的每个请求平均消耗时间
Transfer rate: 0.02 [Kbytes/sec] received # 平均每秒网络上的流量,可以帮助排除是否存在网络流量过大导致响应时间延长的问题# 网络上消耗的时间的分解:
Connection Times (ms)min mean[+/-sd] median max
Connect: 1 1 0.0 1 1
Processing: 8742 8742 0.0 8742 8742
Waiting: 8742 8742 0.0 8742 8742
Total: 8743 8743 0.0 8743 8743
结论:
一个公式可以表示:
响应时间=网络响应时间+应用程序响应时间。标准可参考国外的3/5/10原则:
(1)在3秒钟之内,页面给予用户响应并有所显示,可认为是“很不错的”;
(2)在3~5秒钟内,页面给予用户响应并有所显示,可认为是“好的”;
(3)在5~10秒钟内,页面给予用户响应并有所显示,可认为是“勉强接受的”;
(4)超过10秒就让人有点不耐烦了,用户很可能不会继续等待下去;
一个测试网站在你预估正常情况下的请求数与并发量的模拟测试,
结果如果80%的请求完成率在3秒以内,就代表访问页面的性能为优秀;
结果如果80%的请求完成率在5秒以内,就代表访问页面的性能为良好;
结果如果80%的请求完成率在10秒以内,就代表访问页面的性能为中;
结果如果80%的请求完成率在10秒以上,就代表访问页面的性能为差。
ab命令原理
Apache的ab命令模拟多线程并发请求,测试服务器负载压力,也可以测试nginx、lighthttp、IIS等其它Web服务器的压力。
Apache附带的ab工具(使用的PHP环境是WAMP集成环境,
ab工具位于D:\wamp\bin\apache\Apache2.2.21\bin)非常容易使用。
ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载,因此是某些DDOS攻击之必备良药,老少皆宜。
自己使用也须谨慎。否则一次上太多的负载,造成目标服务器直接因内存耗光死机,而不得不硬重启,得不偿失。
在带宽不足的情况下,最好是本机进行测试,建议使用内网的另一台或者多台服务器通过内网进行测试,这样得出的数据,准确度会高很多。远程对web服务器进行压力测试,往往效果不理想(因为网络延时过大或带宽不足)
-n发出800个请求,-c模拟800并发
键入命令:
ab -n 800 -c 800 http://192.168.0.10/
(-n发出800个请求,-c模拟800并发,相当800人同时访问,后面是测试url)
在60秒内发请求,一次100个请求
ab -t 60 -c 100 http://192.168.0.10/
在60秒内发请求,一次100个请求。
PHPstudy用Apache的ab工具测试实例详解相关推荐
- apache密码生成工具htpasswd使用详解
本文主要介绍了1. htpasswd的作用与安装,2. htpasswd命令详解,3. htpasswd的实例,4. htpasswd的应用,有需要的小伙伴参考下 一.htpasswd的作用与安装 h ...
- android 快速开发常用工具类,实例详解Android快速开发工具类总结
一.日志工具类 Log.java public class L { private L() { /* 不可被实例化 */ throw new UnsupportedOperationException ...
- mysql查询性能测试工具_MySQL性能测试工具MySQLslap使用实例详解
原标题:MySQL性能测试工具MySQLslap使用实例详解 MySQLslap是MySQL(了解干货请戳:干货!超过500行的Mysql学习笔记)自带的基准测试工具,优点:查询数据,语法简单,灵活容 ...
- python 自动化办公 案例_python自动化工具之pywinauto实例详解
python自动化工具之pywinauto实例详解 来源:中文源码网 浏览: 次 日期:2019年11月5日 [下载文档: python自动化工具之pywinauto实例详解.txt ] (友情提示: ...
- java测试类 main方法_Java使用agent实现main方法之前的实例详解
Java使用agent实现main方法之前的实例详解 创建Agent项目 PreMainExecutor 类,在main方法之前执行此方法 public class PreMainExecutor { ...
- python代码覆盖率测试_unittest+coverage单元测试代码覆盖操作实例详解_python
这篇文章主要为大家详细介绍了unittest+coverage单元测试代码覆盖操作的实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 基于上一篇文章,这篇文章是关于使用coverage来实现代码 ...
- java ant解压缩_java ant包中的org.apache.tools.zip实现压缩和解压缩实例详解
java ant包中的org.apache.tools.zip实现压缩和解压缩实例详解 发布于 2020-4-7| 复制链接 摘记: java ant包中的org.apache.tools.zip实现 ...
- php解析bt,PHP基于闭包思想实现的BT(torrent)文件解析工具实例详解
PHP基于闭包思想实现的BT(torrent)文件解析工具实例详解 发布于 2017-09-08 20:05:36 | 124 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP( ...
- 内存测试工具memtester使用详解
memtester的下载地址:http://pyropus.ca/software/memtester/ 有源码安装包.deb包.rpm包等. 源码已经编译好,在linux下只要make一下就好了. ...
最新文章
- 最小二乘法预测c语言,用最小二乘法推导本吧会员增长方程,以预测人数增长情况...
- 剑指offer 算法 (综合)
- 微信朋友圈+html+字体,一键修改微信朋友圈字体,快来试试吧
- C++ 简单的语音合成(TTS,即文字转语音)类
- 程序员过关斩将--快速迁移10亿级数据
- Node Version Manager--NodeJS的多版本管理工具--轻松实现多个版本的NodeJS的管理开发
- P3:线性分类、损失函数与梯度下降
- CTF:攻防世界web PART01
- 如何使用计算机中的导出,(excel在电脑的哪个文件里?)excel怎么把查找的导出
- “bim”技术助力“智慧城市”建设
- PDF软件有这么好用的打印机,你知道吗?
- C++中常用的库函数 (自用)
- 第一章-第一题(小学生四则运算)--By郭青云
- mysql中标识列是什么意思_数据库标识列是什么意思
- 东子破解jms7月2号
- 小技巧(8)pimple模式
- 蓝桥杯国赛8-JavaA-2-瓷砖样式
- 人工智能之基于多变量线性回归的房屋销售价格预测详细解决方案
- 将png转为webp_如何将Google的WEBP图像另存为JPEG或PNG
- 人气爆棚 航嘉亮相华中科技大学现场