计算服务器的负载能力,是互联网系统设计维护的基础问题,也是一个很实际的问题。租用带宽超过实际需求,带来资金方面的浪费租用带宽过小,业务受到影响。吞吐量如何计算
我们先看下吞吐量的计算公式:吞吐量=并发请求数每个请求的响应数据量。从这个公式,我们可以看出,吞吐量与并发请求数请求响应的数据量相关。注意这里是并发请求数不是用户数,并发用户数不一定和并发请求数是相等的。单位时间内1个用户可以发起多个用户请求。也就是说,吞吐量与并发用户数应用本身有很大的关系。1个用户看直播和访问网页需要的流量是不相同的,看直播的流量远大于看网页的流量。
回到问题。网站访问ip过万,对互联网系统来说是一个不大的量。我们要算带宽负载,需要搞清楚服务器业务集中的时段。10000个用户访问集中在10小和5小时,并发是不同的。知道了集中时段,我们可以算出并发请求数。并发请求数的计算公式为:并发请求数=ip数/集中访问小时数/3600单用户并发数。10000个用户访问,我们按业务每天集中在4小时完成单用户并发请求数1计算,结果是多少呢小于1,也就是1秒就1个访问。每个请求的数据量按100KB计算,那么服务器的吞吐率就是100KB/s,购买云服务器的最小带宽1M也够用了。
另外这里还有一个用户体验的问题,一般的服务器响应时间设计为小于3s,如果我们要做到更好的用户体验,就要相应增大带宽。假设设计为1s,访问的网页内容大小为200KB,1M(128MB/S)的带宽就不能满足体验的要求,就要租用2M的带宽。一般购买服务器带宽的时候,在满足最大吞吐量的基础上,冗余30%的宽带来应对突发情况。
结论:服务器的带宽负载与并发请求数,应用自身用户体验等有密切关系。网站10000IP的访问量,采购最小的服务器即可满足要求。