关于web服务器的并发性能,到底应该怎么测试,衡量以及改进
- 0次
- 2021-05-18 14:09:47
- idczone
客户的需求经常是
* 我们要有100w的注册用
* 我们每天会有大于1000w的访问
* 我们需要支持10000人同时在线
诸如此类的说法,但是如何把这些数据转化为一个可以衡量的标准呢?
测试的工具一般就用ab,siege或者jmeter,这些工具里一般可以设置并发量,测试循环次数等等,但是一直不清楚怎么设置算是模拟了上述的那些要求。
还有就是,如果发现性能问题了,应该从哪里入手解决,如何发现瓶颈。
希望大家来讨论美国服务器讨论。
自己顶一下,没人讨论讨论么
几点需要说清楚.
100W的注册量,这个只跟空间和数据库有关系,跟其他关系不大,只要程序做好分表什么的就可以.
1000W的访问,是PV吧.折合一下,只算16个小时的有效访问量时间,一秒钟173个PV.平均每个PV按照300K的传输量来算,大概需要50M的带宽,加上备用,至少要到60MB的有效带宽.
所谓支持10000人同时在线,并不是10000人同时刷新.不认为这个有参考价值.如果真有哪个社区10000人同时刷新,那么需要准备的带宽就是3000MB...这个时候带宽甚至不作为瓶颈了,硬盘IO才是瓶颈,如果要做到这样的数量级,就不是这么简单的了.
并发测试用AB就可以.往往都达不到ab的数值就死掉了.
ab如果测试每天1000W的访问,你就算出来并发是多少,然后用AB去发起足够的并发.
其他工具没用过.
带宽瓶颈解决一般是用CDN,多机分担等.
IO瓶颈解决一般是读写分离,高速硬盘等.
以上是我的理解.