TIBCO EMS .NET参考指南(第134页)
要启用重新连接行为和容错,serverURL参数必须是包含两个或多个URL的逗号分隔列表。在只有一台服务器的情况下,您可以提供该服务器URL的两个副本以启用客户端重新连接(例如,tcp:// localhost:7222,tcp:// localhost:7222)。
TIBCO EMS用户指南(第292页)讨论了故障转移方案,客户端通知以及客户端到备份服务器的自动传输,但没有特别“重新连接”相关。
在“重新连接”方案中,服务器是否处理所有内容?或客户端是否必须使用它的TIBCO.EMS.Connection实例?
答案 0 :(得分:2)
从我们的测试看起来,服务器和客户端都有启用此功能的设置。在客户端,SetReconnAttemptCount,Delay,Timeout控制客户端在知道服务器故障转移/连接故障转移后尝试重新连接的尝试。
在我们的测试中,我们使用单个服务器环境,在连接字符串中列出服务器两次(使用您在上面概述的技巧),当该服务器脱机时,我们收到了一个影响故障转移过程的客户端通知(我们启用了Tibems.SetExceptionOnFTSwitch(true)),当服务器重新上线时,我们的客户端无缘无故地重新连接而不会错过任何一个节拍。我们不需要编写任何代码,内部重新连接逻辑发挥了它的神奇作用。
在服务器端,需要启用容错功能,我认为需要启用服务器客户端和客户端 - 服务器心跳(尽管尚未验证)。
希望这有帮助。