0

我正在开发一个应用程序,其中有 jms 消息队列。

有一个生产者将消息排入队列,一个消费者将消息出列。

可能存在消费者没有运行的情况。如果消息在一定时间内没有被消费者消费,我需要从生产者那里获取。

我想使用 JMX 来监控消息队列的消息是否过期。

任何建议或示例代码如何做到这一点.....

4

1 回答 1

0

这取决于 JMX 实现者……一些服务器提供 JMX 实现来监视其资源。如果没有提供,那么您将需要编写使用 MQ 实现者提供的 API 的 JMX 实现。

解决这个问题的一个更简单的方法是使用过期的请求-响应模式。消费者需要在指定的内部时间做出响应。如果不能,则队列上的消息可能会过期。如果没有收到响应,生产者可以采取进一步的行动。具有相关 ID 的 JMS 选择器可用于将响应与请求相关联。

于 2014-02-06T17:20:47.597 回答