客户端 - 服务器体系结构中的容错

时间:2011-05-14 19:59:58

标签: java sockets fault

我有一个使用套接字为许多客户端提供服务的java服务器 如果主服务器出现故障,我希望后台服务器自动接管。 我所做的是,我把备份服务器的IP地址和端口放在客户端,当发生超时时,我只是连接到备份服务器。 这是正确的决定还是应该将备份服务器坐标放在服务器端并在连接时将其传输到客户端?

由于

2 个答案:

答案 0 :(得分:1)

我认为将备份服务器信息存储在服务器上会更加健壮 - 这样可以更容易地更改它。如果客户端切换到备份,备份可以宣告它的备份的位置。

使用硬件负载平衡器也可以解决这个问题,尽管这对于无连接协议来说更容易实现。但是,使用硬件可以让主机服务器出现故障时备份机器自动进入,这当然更简单。

答案 1 :(得分:1)

让服务器向客户端发送备份地址是个好主意,集中管理这些数据会更容易。

备份服务器地址也应该在客户端的属性文件中(或者在客户端和服务器读取的中央配置数据库中),否则在主服务器关闭时它无法找到备份。