如何在群集中使队列管理器成为默认值

时间:2012-10-10 02:39:31

标签: ibm-mq

我有一个名为inventory的集群,其中有4个队列管理器已定义为london,paris,newyork,tokyo。如果london和paris是获取消息的默认队列管理器,我如何使newyork和tokyo默认接收并且不允许客户端将消息放在伦敦和巴黎上,但它们仍然应该在群集中。这可以通过工作负载管理实现吗?

如果还有其他解决方案,请告诉我。所有这些都应该在不对客户端进行任何更改的情况下完成。

由于

2 个答案:

答案 0 :(得分:4)

在这里添加T.Rob的建议有几个选项,你可以看一下:

  1. 禁用londonparis中的群集队列实例。因此,消息将在newyorktokyo之间分发。

  2. 编写一个集群工作负载平衡出口,该出口将跳过将消息放入londonparis中的集群队列,并仅将消息放入newyork和{{1}中的集群队列实例}}

  3. 请参阅MQ 7文档中的Writing and compiling cluster workload exits

答案 1 :(得分:3)

重要的是要记住,WebSphere MQ集群提供了一个上下文,告诉队列管理器如何在它们之间进行通信。另一方面,客户完全没有意识到集群。必须具体告知客户端要连接的队列管理器。

在您的情况下,配置客户端时会为他们提供newyorktokoyo QMgrs的连接详细信息,但他们将无法连接到londonparis。假设所有这些QMgrs都在WebSphere MQ集群中,来自客户端的消息将能够解析为驻留在londonparis上的集群队列。