环境介绍:
配置测试环境:
测试脚本:
去掉http://xxx.xx.xxx/得到参数文件。第一行加上参数名称。
开始测试:点操作“执行”开始任务。任务开始时候可以监测测试数据,ECS数据等。并等待测试结果。
测试结果:
TPS数据:
请求状态:
响应时间:
虚拟用户数:
ECS状态检测数据:
结果分析:
1.异常数据:TPS数据 响应时间 CPU占用数据都出现较大波动。
2.异常分析:在测试过程中,服务器异常时间。多次刷新网站。发现网站页面出现无法连接数据库。
3.异常处理:把DZ程序的数据库连接方式改成长连接。再次测试。压力测试数据正常。
测试小技巧:
我在找出异常后进行了4小时的稳定性测试。
进过4个小时测试:只出现一次失败事务,说明服务器在80%左右的压力下稳定性良好。
关于前后两次网络测试说明:
第一次测试,没使用SLB,所以出现带宽瓶颈,CPU未能满负荷运转。
第二次测试,使用私网SLB,所以没有网络瓶颈,CPU基本保持100%负荷。
通过数据测试得知。10M带宽环境 1核1G ECS+ 最低版RDS 最少能支持50万PV的访问。
以上是个人测试小小心得。
补充说明:
有人对50万PV的质疑,我说一下数据得来,
测试TPS=27/秒 所以24跑满流量=27*24*60*60=2332800 峰值是平均流量的5倍 2332800÷5=466560 等于46.6万左右。所以我说50PV万这个数值。
还有这个是GET操作的数据。数据样本上面都有。
如果你考虑的更多的php插件+回头+发帖等操作可能这个数值会有下降。上面的数据是纯GET的数据。
1.ECS:1核 1G 5M 杭州
2.RDS:240M 5G 杭州内网
3.SLB:私网实例
配置测试环境:
测试脚本:
1.生成参数文件,我的方法是利用工具生成的sitemap.txt 2000条网址。
去掉http://xxx.xx.xxx/得到参数文件。第一行加上参数名称。
2.设置好域名+SLB的IP。
3.再在TPS里配置的请求连接里加上刚才设置的参数。保存脚本。
配置场景:
选择上面添加的脚本。填写场景信息。初始用户10。每6秒增加一个用户,到100用户停止。
添加测试任务:填上任务名称,测试时间20分钟,绑定ECS进行同步监测性能。最后添加前面设置好的场景。
开始测试:点操作“执行”开始任务。任务开始时候可以监测测试数据,ECS数据等。并等待测试结果。
测试结果:
TPS数据:
请求状态:
响应时间:
虚拟用户数:
ECS状态检测数据:
结果分析:
1.异常数据:TPS数据 响应时间 CPU占用数据都出现较大波动。
2.异常分析:在测试过程中,服务器异常时间。多次刷新网站。发现网站页面出现无法连接数据库。
登录RDS后台查看监测数据。发现RDS连接数出现较大波动。
3.异常处理:把DZ程序的数据库连接方式改成长连接。再次测试。压力测试数据正常。
测试小技巧:
1.开通私网SLB,这样可以不用花钱就可以解决测试中的带宽瓶颈。(测试带宽并发压力的可以不用。)
2.测试数据异常时可以刷新网站。多次刷新可以看到异常的页面。
3.在凌晨时间时间断,可以使用稍小的并发量对服务器进行长时间稳定性测试。
我在找出异常后进行了4小时的稳定性测试。
进过4个小时测试:只出现一次失败事务,说明服务器在80%左右的压力下稳定性良好。
关于前后两次网络测试说明:
第一次测试,没使用SLB,所以出现带宽瓶颈,CPU未能满负荷运转。
第二次测试,使用私网SLB,所以没有网络瓶颈,CPU基本保持100%负荷。
通过数据测试得知。10M带宽环境 1核1G ECS+ 最低版RDS 最少能支持50万PV的访问。
以上是个人测试小小心得。
补充说明:
有人对50万PV的质疑,我说一下数据得来,
测试TPS=27/秒 所以24跑满流量=27*24*60*60=2332800 峰值是平均流量的5倍 2332800÷5=466560 等于46.6万左右。所以我说50PV万这个数值。
还有这个是GET操作的数据。数据样本上面都有。
如果你考虑的更多的php插件+回头+发帖等操作可能这个数值会有下降。上面的数据是纯GET的数据。
原文地址:http://bbs.aliyun.com/read/179356.html
参加活动:http://promotion.aliyun.com/act/aliyun/freebeta/