队列数据 publish/duplicate

Queue data publish/duplicate

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

另一方面,有 3 个应用程序要处理数据。
我有 3 个 duplicate/distribute 数据的解决方案。

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

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

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

然后您可以灵活地定义 durable/nondurable 下标。

对于选项 # 2,有(至少)2 个解决方案可用:

  1. 有一个名为 MMX(消息多路复用器)的开源应用程序。它会完全按照您的描述进行操作。唯一的问题是您需要管理应用程序。即,如果您停止队列管理器,则需要手动重新启动应用程序。
  2. 有一个名为 MQ Message Replication 的商业解决方案。它是一个 API 出口,它在队列管理器中运行并完全按照您的意愿行事。注意:因为它在队列管理器中运行,所以没有任何外部需要管理。

我认为还有另一种解决方案,仅使用 MQ 来定义一个将 queue1 镜像到 queue2 和 queue3 的名称列表 应定义为:Source、Destination、QueueManager。

希望有用。

比鲁克。