我们正在实现一个MQ/IIB体系结构,其中我们将在2个RHEL服务器上各有一个QM和一个代理,负载平衡以划分传入的通信量。我们有通过JMS绑定文件连接服务器的使用者应用程序。我们还在它们上运行IIB应用程序。
现在,由于一个绑定文件在创建连接工厂时可能只有一个QMGR名称,因此不建议在每个服务器上保留不同的QM/Broker名称。因为这个绑定文件将与使用者共享,所以它必须具有唯一的QM名称。但是,如果每个服务器上都有相同的QM/Broker名称,则IIB记录和重放工具上的所有日志都将有一个代理名称(来自两个服务器),这同样难以确定哪个服务器实际服务于传入的请求。
在这种情况下,你能提出最好的办法吗?否则,建议是否可以修改上述方法以实现我们的目标。
发布于 2018-02-14 04:45:22
一般来说,有两个同名的队列管理器并不是一个好做法。基于您所述的原因,IIB经纪人也是如此。
在绑定文件中,可以将QMANAGER保留为空(null)。这将允许应用程序连接到侦听您指定的HOSTNAME和PORT的任何队列管理器。
如果2个RHEL服务器上的队列管理器使用相同的端口,您甚至可以将主机名设置为localhost,并在两个服务器上使用相同的绑定文件。
如果两个队列管理器在同一个端口上侦听,示例如下:
DEFINE CF(CF_NAME) QMANAGER() TRANSPORT(CLIENT) CHANNEL(MY.SVRCONN) HOSTNAME(localhost) PORT(1414)https://stackoverflow.com/questions/48777280
复制相似问题