5

我有一个需要监视 WebSphere MQ 中的队列的 .NET 应用程序。我需要在不影响当前流程的情况下对每条消息做出反应。客户端应用程序无法明确向我发送相同的消息。

我可以在不将消息从队列中删除的情况下阅读消息吗?我可以收到每条消息的通知吗?我可以将 MQ 配置为复制当前队列吗?

还有其他解决方案吗?

4

2 回答 2

2

如果您使用的是 WMQ v7,那么除了更改其中一个应用程序的队列名称外,您可以在不影响现有应用程序的情况下执行此操作。

目前消息生产者和消费者使用相同的队列。在 WMQ v7 中,您可以在主题上创建别名,以便消息生产者认为它是一个队列。然后,您可以创建两个管理的、持久的订阅,一个指向现有的输入队列,另一个指向一个专用于您的新应用程序的队列。

当然,您已经在使用 v7,因为 v6 明年将停止服务,对吧?您可以将 QMgr 升级到 v7 以启用此行为,同时仍为应用程序使用 v6 客户端代码。

如果您使用的是 WMQ v6,那么MirrorQ 程序可能适合您。

于 2010-06-18T16:58:12.323 回答
2

您可以从使用队列更改为持久主题,并让您的阅读器和浏览器都订阅它。

您还可以在队列管理器上创建分发列表。分发列表用于将同一消息的副本发送到多个队列。然后,您将拥有一个处理队列和一个浏览/监控队列。

于 2010-06-16T21:36:02.773 回答