在服务器之间划分网络流量

在服务器之间划分网络流量

我的网站发展得太大,以至于一个 Web 服务器无法处理如此大的流量。考虑到这一点,代码完全能够并行运行,共享一个数据库,但我从未真正尝试过将一个 IP 地址分配给多个 Web 服务器。我需要什么样的硬件或软件来将传入的 TCP 连接分配给多个设备?如果系统可以检测到一个或多个设备已离线,则可以获得加分。

答案1

你需要一个负载均衡器。有两种:软件和硬件。

  • 硬件:您购买的盒子通常具有 Web 界面,可在 Web 服务器之间均匀分配流量。它们通常具有许多功能,可让您执行许多操作,例如 802.1Q 支持、SFP、全局负载平衡、SSL 终止等等。这些产品相当昂贵,您可以从 Cisco、F5、Radware、Barracuda(更便宜)购买。

  • 软件:您获得一个标准服务器并安装负载平衡软件。使用 Linux 很容易做到这一点。您可以使用 HAProxy 或 ldirectord 或 Keepalived。有很多可供选择。这是一种更便宜的方法,但没有漂亮的 Web 界面和有趣的功能。

任何还算不错的负载平衡系统都会检测到离线服务器。以上所有系统都会检测到离线服务器。

答案2

你可以使用为此,或两个良好而强大的系统和 Varnish 甚至会像王者一样缓存您的网站并加快速度。

答案3

除了 Antoine 所说的,如果您的网站确实越来越大,我建议使用硬件负载平衡器。软件负载平衡器往往会给您的网络增加大量开销流量。硬件负载平衡器通常还设计有故障转移功能,因为如果没有,它就会成为单点故障。正如 Atnoine 提到的,它们通常非常昂贵。如果您的商店规模较小,我建议您考虑使用负载平衡器肯普科技,它们做工精良,性能出色,价格仅为上面列出的大品牌的十分之一。我们目前正在使用一对来平衡我经营的在线大学的网站、学生门户和在线学习门户的负载,这些大学的流量每天都很大。

答案4

实现此目的的最便宜的方法是获取另一个 IP 地址并将其添加到网站的 A 记录中。然后请求将随机定向到一台或另一台机器。但这不会自动为您处理故障转移,也不能保证会话一致性。

相关内容