1

我的应用程序通过 IBM Websphere MQ 与另一个系统通信。有时没有消息进入我的队列,但另一个系统说他们已经发送给我。所以我想知道如何为到达我的队列的所有消息保留历史记录。

4

3 回答 3

1

我能想到的唯一其他方法是使用通道出口。

于 2010-01-30T13:45:03.883 回答
0

请记住,它可能仍会通过网络传递,因为 MQ 架构可能有许多中间件队列。同样,消息不需要立即通过通道传输 - 发送者可以将消息批量化并使用触发器发送它们。

确保记录所有到达的最佳方法是使用拦截器队列。

这是通道写入的队列(我们称之为 A),在此更改之前,您的应用程序将从中读取。然后,您有一个从 A 读取的传输过程,记录消息,然后将其写入第二个队列 (B)。这第二个队列是您的应用程序现在读取的内容。

于 2008-11-12T07:15:41.213 回答
-1

您可以在队列末尾放置一条日志记录语句,以便在收到消息后立即将内容转储到日志中。这样,如果另一个系统说他们发送了一条消息,他们所要做的就是告诉你什么时候,你可以查看你的日志,看看是否在那个时间从他们那里收到了一条消息。

于 2008-11-12T14:24:16.763 回答