我正在使用Java进行JMS连接。我用来建立连接的命令是
QueueConnectionFactory factory =
new com.tibco.tibjms.TibjmsQueueConnectionFactory(JMSserverUrl);
其中JMSServerUrl
是存储我的JMS URL的变量。
现在的问题是我需要添加容错URL,即两个不同的URL。那么任何人都可以告诉我如何在上面的代码示例中一起指定两个URL,这样如果第一个URL不可访问,它应该尝试连接到另一个URL。
答案 0 :(得分:3)
将所有网址放在一个字符串中,并在它们之间加上逗号。
new TibjmsQueueConnectionFactory("ssl://host01:20302,ssl://host02:20302");
警告,我是一名Tibco EMS新手,但这似乎有效,我可以得到错误证明......
javax.jms.JMSSecurityException: Failed to connect to any server at:
ssl://host01:20302,ssl://host02:20302
[Error: Can not initialize SSL client: no trusted certificates are set:
url that returned this exception = SSL://host01:20302 ]
答案 1 :(得分:0)
tibco的.NET文档(我知道你使用java)表明你可以为消息传递连接提供逗号分隔的服务器URL列表。请记住,我没有任何真正的tibco经验,但这是处理初始连接容错的常用方法(即在建立连接和接收有关群集的信息之前,之后故障转移通常由连接处理) 。这可能值得一试。我在这个问题上遇到的另一个解决方案是在网络级创建虚拟IP并处理容错。