IBM MQ:JMS绑定文件中的多个QM

时间:2018-02-13 23:21:44

标签: ibm-mq ibm-integration-bus

我们正在实施一个MQ / IIB架构,我们将在两个RHEL服务器上分别拥有一个QM和一个Broker,彼此负载均衡以划分传入流量。 我们有消费者应用程序通过JMS绑定文件连接我们的服务器。我们还在其上运行了IIB应用程序。

现在,由于一个绑定文件在创建连接工厂时只能有一个QMGR名称,因此不建议在每个服务器上保留不同的QM / Broker名称。由于此绑定文件将与消费者共享,因此必须具有唯一的QM名称。 但是如果我们在每台服务器上都有相同的QM / Broker名称,那么IIB记录和重放工具上的所有日志都将有一个Broker名称(来自两个服务器),这也很难确定哪个服务器实际为传入请求提供服务。

请您在这种情况下建议最好的方法吗? 或者建议是否可以修改上述方法以实现我们的目标。

1 个答案:

答案 0 :(得分:1)

通常,拥有两个具有相同名称的队列管理器并不是一个好习惯。出于你所说的原因,IIB经纪人也是如此。

在Binding文件中,您可以将QMANAGER留空(null)。这将允许应用程序连接到任何侦听您指定的HOSTNAMEPORT的队列管理器。

如果2台RHEL服务器上的队列管理器使用相同的端口,您甚至可以将主机名设置为localhost,并在两台服务器上使用相同的绑定文件。

如果两个队列管理器都在同一端口上侦听,则示例如下:

DEFINE CF(CF_NAME) QMANAGER() TRANSPORT(CLIENT) CHANNEL(MY.SVRCONN) HOSTNAME(localhost) PORT(1414)