1

Tibco 将消息存储在数据文件或数据库中。我需要浏览发布到主题或队列的旧消息。EMS 是否提供任何 API 来搜索旧/已使用的消息?假设我在时间 t1 有一个主题 complexEvent.topic,发布者向 complexEvent.topic 发布消息,在时间 t2,消费者消费该消息。假设从 t2 开始 2 小时后,我需要查看在 t1 和 t1+ 10(分钟)之间发布到主题 complexEvent.topic 的所有消息。如何搜索旧邮件?

4

1 回答 1

1

EMS 不按设计存储消息副本:MOM 不是 DBMS,MOM 通常应针对性能进行优化。

对于像您这样的特定和 PUNCTUAL 需求,我只需从您要登录到“DESTINATIONNAME.log”队列的目标(主题,队列)创建一个 EMS 桥(类似于 MQ 别名,请参阅 EMS 文档)。这样,当前代码和目的地不受影响。

之后,您可以使用 Java QueueBrowser 和 MessageSelector 在日志队列中搜索消息。有关详细信息,请参阅此Oracle 文档

不要忘记清理队列(您还可以设置消息限制和溢出策略)。

如果性能至关重要,请考虑将日志记录队列存储在不同的 EMS 实例上。

于 2014-03-06T14:50:29.730 回答