很早前,性能测试中有个通用的2-5-10原则,为用户对响应时间(RT)的容忍度,即:
2s 很快
2s>RT>5s 一般
5s>RT>10s 差点意思
RT>10s 垃圾站点
面对某些刚性需求的站点(抢购、抢票),需要注意。
做过一个项目,由于宣传做的很到位。导致关注该活动的用户超出预期,服务器几近崩溃。事后分析统计信息时发现,当RT超5s后,就有用户开始进行页面刷新操作,超10s时进行刷新的用户明显增多。
这个项目,每次页面刷新都会产生一个新的请求,该请求将会让服务端进行一系列查询。当用户1,首次的请求大于5s时没有得到应答,用户1就有很大的可能进行刷新操作,这时,用户1的首次请求还在处理、二次请求也到达服务端进行处理,用户1对服务端造成了1次额外的压力。
所以,当某些强需求的页面相应时间过长时,对用户量的估计应该以5s标准,或者更少。