我正在编写一个网络应用程序,它有几台机器服务于不同的客户端,但机器本身需要频繁地相互通信。比如说,多个聊天服务器。如何从网络体系结构上实现服务器到服务器的通信。我不希望每台服务器都与所有其他服务器打开连接。任何想法、建议或建议都会有帮助。作为一个客户开发人员,我对其中任何一个都是全新的。谢谢!
发布于 2011-06-06 07:20:47
为什么不希望每个服务器与所有其他服务器打开一个连接?您可以始终在每个服务器上安装两个NIC。一个网卡将服务客户端,另一个网卡将用于服务器与服务器之间的通信。另一种选择是创建VLAN,但我仍然不明白为什么不希望每个服务器都与所有其他服务器打开连接?
发布于 2011-06-06 07:31:51
如果通信不需要是即时的,您只需使用中央数据库服务器来存储消息(或正在传递的任何消息),然后其他服务器可以在消息准备就绪时将其取走。
另一种选择是使用中央服务器充当交换,基本上是等待消息,然后根据需要将它们转发到其他服务器上的守护进程。这样做要比db选项tho‘复杂得多,因为您必须有适当的方法来确保消息实际上被传递,并且在消息不能被转发时使用某种重试机制。
https://serverfault.com/questions/277316
复制相似问题