应用服务器性能计算

来源:百度文库 编辑:神马文学网 时间:2024/04/27 19:18:06
学习平台用了2年半了,访问量160万人次,现在考虑升级一下

最近有测试了一下服务器

以前用load测试工具也做过应用的性能测试,但对应用服务器性能的总体感觉不太全面

对应用服务器,自己总结有如下公式(一个人5秒点击一次)
人数/5 = 每秒点击数 = 服务器需要的worker平均数/平均响应时间(s) = 测试场景迭代数*场景中设定的点击数/测试时间


我总结的确定一个服务器的负载能力的步骤:
1.场景设定比较切合实际的读写操作比例,大操作/小操作比例
2.worker先设大,迭代数慢慢加,可用2分法,2000-4000-3000-3500-3250,增加或减少测试,找到平均响应达到不可容忍(比如4秒)的临界值。测试worker必须大于每次测试的“需要worker(及时)”——排除因worker设置不够,测的不准
3.算得机器每秒可承受点击率
4.得到机器最大荷载人数=测试场景迭代数*场景中设定的点击数/测试时间*5
这时的状态即为服务器能接受的点击率极限:此机器设置worker=平均秒点击率*平均响应时间

在测试时会受到tcp底层协议限制
tcp连接结束时,服务器发送“断开”消息,进入TIME_WAIT,默认时间freebsd60秒,windows240秒?,solaris240秒

用一台机器测试,多个连接,如果多到一定程度,在连接服务器就拒绝了。与time wait时间、tomcat响应时间、设定单机worker数有关
真实环境,点击率1000/s及60000/m,time wait时间设60基本上刚好符合,点击率再高,硬件能承受,那么就被time wait限制了
测试时尽量使用更多的机器

经过多次测试sun T1000服务器可承受的点击率:600次/秒(查询操作,更新操作待测,花时间啊)

且发现一台硬件服务器开多个软件应用服务器(tomcat)性能并不能提升