我当前的设置:
1 个 Http 负载均衡器
3 个 Apache 前端服务器
1 个 Mysql 负载均衡器(平衡所有三个服务器的读取,写入仅发送到主服务器)
3 个 Mysql 数据库服务器(1 个主服务器,2 个从服务器)
一切都很好,但我有突发的流量高峰,需要在高峰期间扩大规模。我正在考虑转向更简单的例程。
1 个 Http 负载均衡器
n* Apache + Mysql 服务器组合(其中 1 个包含 Mysql 主服务器)
每个 Apache 服务器都会读来自本地数据库,但是写到主服务器。这意味着要扩展,我所需要做的就是启动另一台服务器并将其添加到 LB。通常我需要与 Mysql 相同数量的 Apache 服务器。
您觉得这个设置有什么问题吗?我之前没见过有人使用这个设置,所以我想知道它有什么缺点。
答案1
如果只有一个负载均衡器,您的设置中仍会出现单点故障。因此,我要做的第一件事是添加第二个负载均衡器,并设置两个负载均衡器之间共享的虚拟 IP。
LeasewebLabs有一篇关于如何做到这一点的很好的文章。
此外,我认为 Web 服务器应该与数据库服务器位于不同的机器上(+您可能不需要像 Web 服务器那样多的数据库服务器)。我知道您的新设置看起来更简单,但最终它会有点矫枉过正。当然,这一切都取决于您托管的服务/网站的类型。
请查看 serverfault 的博客:他们的设置以获取提示:关联