2015-12-21 40 views
0

我正在使用IBM WebSphere MQ 7.5服务器作为我的应用程序的队列管理器。
我已经通过单个队列接收数据。队列数据发布/复制

另一方面,有3个应用程序想要处理数据。
我有3种解决方案在它们之间复制/分发数据。

  1. 使用代理复制1到3队列 - 我没有代理,所以它无法访问我。
  2. 编写一个应用程序以从队列中获取并将它们放入同一机器上的其他3个队列中
  3. 定义发布/订阅定义以将输入队列发布到同一机器上的3个队列。

我想知道哪些方法(2 & 3)是首选,并且具有更高的性能和可接受的操作管理工作量。

回答

0

根据描述我会说PubSub会实现目标;尝试用纯PubSub术语思考,而不是考虑队列。即您有一个应用程序发布到一个主题,然后有3个应用程序,每个应用程序都有自己的订阅以获取消息的副本。

然后,您就可以灵活地定义耐用/非持久下标。

0

有关选项#2中,有(至少)可2种溶液:

  1. 有一个称为MMX(消息多路复用器)的开放源应用程序。它将完成你所描述的内容。唯一的问题是你需要管理应用程序。即如果停止队列管理器,则应用程序需要手动重新启动。
  2. 有一个名为MQ Message Replication的商业解决方案。它是一个在队列管理器中运行的API Exit,并且完全按照您的需要进行。注意:在队列管理器中运行时没有任何外部可管理。
+0

当队列管理器启动时,您可以使用服务对象来启动外部应用程序:http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_7.5.0/com.ibm.mq.adm.doc/q020970_热媒?LANG = EN –

-1

我认为有另一种解决方案,只有MQ,以限定名称列表,这将反映到队列1和队列2队列3 谨来定义:源,目标,的QueueManager。

希望它是有用的。

Biruk。