Rom*_*azh 5 linux bandwidth high-availability load-balancing high-load
有一个缓存服务器(Varnish):它根据请求从 Amazon S3 接收数据,保存一段时间并将其提供给客户端。我们遇到了1GBit通道容量不足的问题。4 小时内的峰值负载完全阻塞了通道。服务器性能目前足够了。每天大约传输 4.5TB 的数据。每月累积超过100TB。
想到的第一个想法就是再添加一个 1GBit 端口并安静地休眠,直到 2GBit 不够用(这可能很快发生)或一台服务器无法处理它。
然后我们只需要添加新的缓存服务器。但是现在我们需要一个负载均衡器,它将在同一个 URL 上发送请求,始终在同一个服务器上(以避免相同缓存对象的多个副本)。
以下是问题:
平衡器需要的带宽是否等于缓存服务器所有带宽的总和?Balancer没有端口怎么办?
是的。添加更大的管道或使用 CDN 地理负载平衡。
我们应该添加更多的Balancer还是通过Round robin DNS的方式解决问题?
这实际上是相同的解决方案。您添加更多平衡器并将它们插入循环 DNS 中。或者正如我之前所说,更明智的选择是使用地理负载平衡。
解决此类问题的标准方法是什么?
使用 DNS 来回答距离用户最近的服务器,并将此类服务器分布在世界各地。这还有其他优点,例如为用户提供低延迟体验。
任何人都可以建议托管公司可以解决这个问题吗?我们对美国和欧洲市场感兴趣。
对于地理 DNS 负载平衡,您应该 google 一下。您将需要更高端的 DNS 服务,但您应该能够找到它。在欧洲,您绝对应该看看 OVH,它拥有非常大的网络,可以为您提供数千兆位带宽。对于美国,我不知道。