>我有一个使用套接字为许多客户端提供服务的java服务器如果主服务器发生故障,我希望后台服务器自动接管。我所做的是,我将备份服务器的IP地址和端口放在客户端,当发生超时时,我只需连接到备份服务器。这是正确的决定还是我应该将备份服务器坐标放在服务器端并在连接时将其传输到客户端?
谢谢
让服务器向客户端发送备份地址是一个好主意,集中管理此数据更容易。
但是,备份服务器地址也应位于客户端的属性文件中(或客户端和服务器读取的中央配置数据库中),否则它在主服务器关闭时启动时找不到备份。
备份服务器信息存储在服务器上会更健壮 - 这样它就可以更容易地更改。如果客户端切换到备份,备份可以宣布其备份的位置。
也可以使用硬件负载平衡器来处理此问题,尽管这在无连接协议中更容易工作。不过,它肯定更简单,只需使用允许备份计算机在主服务器出现故障时自动介入的硬件。