用Apache的ab并发性能测试结果如何分析出最大并发数?
更新:2023-10-10 10:39:41
人气:620
来源:本站整理
A+
Apache的ab命令模拟多线程并发请求,测试服务器负载压力,也可以测试nginx、lighthttp、IIS等其它Web服务器的压力。 ab命令对发出负载的计算机要求很低,既不会占用很多CPU,也不会占用太多的内存,但却会给目标服务器造成巨大的负载,因此是某些DDOS攻击之必备良药,老少皆宜。自己使用也须谨慎。否则一次上太多的负载,造成目标服务器直接因内存耗光死机,而不得不硬重启,得不偿失。
在带宽不足的情况下,最好是本机进行测试,建议使用内网的另一台或者多台服务器通过内网进行测试,这样得出的数据,准确度会高很多。远程对web服务器进行压力测试,往往效果不理想(因为网络延时过大或带宽不足)
但是如何通过结果分析出AB测试的报告,找到服务器并发的最高点在哪,并不是都处理完成没有错误就算能承载并发,而是找到可接受的并发数在多大压力下完成的时间可以被用户接受才算有效。虽然并发测试10000也能顺利完成,但时间如果花费5分钟,那用户肯定不会继续傻等,所以看下面的报告:
Percentage of the requests served within a certain time (ms)
50% 4632
66% 5381
75% 5975
80% 6317
90% 6778
95% 7562
98% 9299
99% 9355
100% 34177 (longest request)
这里的50%代表请求在4.6秒内完成了,99%的请求在9.3秒内完成,所有请求完成需要34秒。说明最后的1%的请求消耗了大量的时间,对于正常的用户响应来说,这是不行的,所有的并发请求应该控制在5秒内完成,再长的时间等待对于用户来说是不可接受的。
通过把这行结果反馈数据(longest request)控制在5秒内,我们可以得出一台服务器适当的并发能力到底是多少。
推荐的文章
随手记
- ● 自制(IP或域名)可信任的SSL证书,适用360、chrome等浏览器
- ● windows系统下php无法使用curl怎么办?
- ● 绿联UGREENKVM切换器(分屏器)快捷键丢失解决办法
- ● 统信UOS开机指定网址全屏启动自带浏览器以及屏蔽ALT+F4关闭
- ● xshellSSH连接Linux服务器防止超时退出
- ● php8开启OpenSSL扩展库报错disabledinstallext
- ● 统信系统linux安装php时的报错libxml-2.0>=2.7.6
- ● tidb关闭sql_mode=ONLY_FULL_GROUP_BY模式
- ● windows10如何开机自动运行bat文件
- ● Win10Mysql8初始密码丢失,初始化又不显示密码
PHP经验分享
- ● PHP批量对TCP服务端指定多个IP非阻塞检查在线状态
- ● python实现TCP服务端持续接收关机、重启指令并输出结果【系列三】
- ● PHP给TCP服务端发送指令【系列二】
- ● PHP判断TCP服务端是否在线【系列一】
- ● PHP判断远程文件是否存在
- ● LINUX下用PHP获取CPU型号、内存占用、硬盘占用等信息代码
- ● PHP代码用UDP方式远程唤醒电脑让计算机开机
- ● apache下php生成验证码图片不能显示
- ● PHP使用AES加密解密示例(无偏移)
- ● Pluginmysql_native_passwordreported:''mysql_native_password'isdeprecate问题