假设我通过服务器提供商为我的网站http://example.com租用6台专用服务器:
#1: 203.2.113.1
#2: 203.2.113.2
#3: 203.2.113.3
..。
#6: 203.2.113.6
它们的最大上传速率为10 MB/s。
我决定使用机器#1作为负载均衡器,所以通过我的注册员,我建立了一个DNS "A“记录:example.com A 203.2.113.1
。
两个案件:
或者,负载均衡器是否可能将请求传递给机器#2、#3、.、#6,然后直接向客户机负责,而不通过机器#1进行响应?
发布于 2020-04-28 09:50:37
作为负载均衡器运行的单机是一个瓶颈。您应该看看圆形罗宾DNS (第二环节),也就是DNS负载平衡。这不是超级可靠的,你的机器不会被均匀地装载,但是每台机器都应该得到一些负载。
您需要使用分布式负载测试服务来测试它,以确保其工作正常。一个关键是客户端定期为您的域查找DNS。
您还应该查看流缓存。CloudFlare提供这项服务,就像我希望其他人所做的那样,但是我没有使用它,所以我对它不太了解。
发布于 2020-04-28 10:22:57
您确定像http://www.haproxy.org/这样的东西不能处理来自200+客户的流量吗?例如:阅读以下内容:http://www.haproxy.org/#perf。
实际上,它所要做的就是将TCP/IP通信量路由到特定的计算机并返回。就CPU而言,这并不是非常昂贵,除了真正的大量连接。我会更担心网络控制器的容量,你也必须记住一些事情,比如打开文件的最大数量等等,这些都会对网络流量的处理产生负面影响。对网络堆栈的仔细调优似乎比HAProxy的容量更重要:
所有这些微优化导致非常低的CPU使用率,即使在中等负荷下。即使在非常高的负载下,当CPU处于饱和状态时,通常也会注意到5%的用户和95%的系统,这意味着HAProxy进程的消耗比它的系统进程少了大约20倍。这就解释了为什么操作系统的调优是非常重要的。
发布于 2020-05-07 03:17:56
或者,负载均衡器是否可能将请求传递给机器#2、#3、.、#6,然后直接向客户机负责,而不通过机器#1进行响应?
是的,它被称为“直接返回”负载平衡,任何体面的L4负载均衡器都能够做到这一点。
https://serverfault.com/questions/1014447
复制相似问题