如何使用MQQueueConnectionFactory连接到多实例队列管理器

时间:2013-11-15 20:31:55

标签: java tomcat ibm-mq

我们有一个需要与Multi-Instance QueueManager通信的应用程序。两个(实例)都在默认端口上运行并具有唯一的地址。

  • serverA.internal.company.address
  • serverB.internal.company.address

我们使用以下代码来建立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");

我们如何指定这两个地址,以便在不编写自己的重试逻辑的情况下实现故障转移?

2 个答案:

答案 0 :(得分:9)

使用以下内容:

connectionFactory.setConnectionNameList("serverA.internal.company.address(1414),"
                                      + "serverB.internal.company.address(1414)")

而不是

connectionFactory.setHostName("serverA.internal.company.address");
connectionFactory.setPort(1414);

为我们做了诀窍。

答案 1 :(得分:5)

您的音轨正确无误 - 但请查看此技术说明以获取相关信息。

http://www-01.ibm.com/support/docview.wss?uid=swg21508357