海腾数据杨闯为你解答.若有服务器相关问题需要帮忙的可以找我.
普通用户请求下载服务器上的大文件不会有大问题,下载带宽通常在几十M左右,因此一个请求对服务器的带宽压力不大。但当服务器作为CDN回源时就千万要注意了,CDN的机房带宽通常可以达到数百M甚至上G,而IDC机房的带宽费用往往是根据峰值带宽来计算。
因此如果CDN回源大文件时不对服务器带宽做限制,将会出现瞬间极大峰值,造成不必要的经济损失。
解决问题的核心在于限制服务器上行带宽。
我们通过对nginx增加带宽限制尝试解决这个问题。
nginx里有2个配置项
limit_rate <size>限制单个请求带宽峰值,512, 1k, 10m
limit_rate_after <size>当下载超过一定大小后开始限制,100m, 100k
进行如此配置后,我们用curl进行测试,发现当文件下载超过一定大小后,下载速率就会降到limit_rate设定的带宽值。
总结:如果网站有大文件资源时,一定要注意下载速率的配置,特别是在做CDN回源时尤其必须对速率进行配置。即便不做CDN回源,在某些特殊场景下也有可能出现高带宽下载,因此要特别注意
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)