我正在开发一个应用程序,我有两个多线程服务器(Server1和Server2)。我将这两台服务器中的数据保存在一个Map中。我想要做的是在服务器之间做一个负载均衡(两台服务器上的数据量相同)。所以我有两个问题:客户端 - 服务器架构与多个服务器
1)如何将客户端随机连接到服务器?例如,当我启动一个客户端时,这个客户端连接到Server1,当我启动另一个客户端时,这个客户端连接到Server2。
2)我可以使用什么技术来完成服务器中的负载平衡?
此致敬礼。
我正在开发一个应用程序,我有两个多线程服务器(Server1和Server2)。我将这两台服务器中的数据保存在一个Map中。我想要做的是在服务器之间做一个负载均衡(两台服务器上的数据量相同)。所以我有两个问题:客户端 - 服务器架构与多个服务器
1)如何将客户端随机连接到服务器?例如,当我启动一个客户端时,这个客户端连接到Server1,当我启动另一个客户端时,这个客户端连接到Server2。
2)我可以使用什么技术来完成服务器中的负载平衡?
此致敬礼。
A 很容易解决方案分布在两台服务器之间的负载将使用Round-robin DNS。这里的基本思想是,所有的DNS请求(由你的客户)不仅仅解析为一个IP地址,而是它们的一个列表(你的情况二)。这又意味着他们将有效地连接到任一服务器。
这样做的简单性(和下侧)是每个IP地址返回的概率是不100/n
(其中n
是地址列表中的数量)。我只是想强调它不一定是50%(在两种情况下)。
现在,如果你想要true负载平衡,你可以看看你将放在Server1
和之前的负载平衡设备。像这样的东西会更加可靠,但是你的成本/复杂性也会增加。
对于最简单的解决方案,我会考虑循环法DNS。
您可能正在寻找一个ReverseProxy。有很多解决方案,取决于您的项目,可能比另一个更合适。