我们有一个需要与多实例QueueManager通信的应用程序。两种(实例)都在默认端口上运行,并且具有唯一的地址。
我们使用以下代码建立ConnectionFactory:
MQQueueConnectionFactory connectionFactory = new MQQueueConnectionFactory();
connectionFactory.setTransportType(1);
connectionFactory.setPort(1414);
connectionFactory.setChannel("CLIENTCONNECTION");
connectionFactory.setQueueManager("queue.manager.name.here");
connectionFactory.setHostName("serverA.internal.company.address");
我们如何指定两个地址,以便在不编写我们自己的重试逻辑的情况下实现故障转移?
最佳答案
使用以下内容:
connectionFactory.setConnectionNameList("serverA.internal.company.address(1414),"
+ "serverB.internal.company.address(1414)")
代替
connectionFactory.setHostName("serverA.internal.company.address");
connectionFactory.setPort(1414);
为我们做了把戏。