0

我有一个队列生产者(NON_PERSISTENT)和一个连接到我的 ActiveMQ 服务器的队列消费者。如果生产者在消费者未连接到 ActiveMQ 时向队列发送消息,则似乎在消费者启动并连接到 ActiveMQ 时已存储和传递消息。

如果消费者在交付时未连接,我希望 ActiveMQ 忽略该消息。我怎样才能做到这一点?

提前致谢。

4

1 回答 1

1

使用主题而不是队列 - 这是主题的默认行为(除非使用持久订阅者)。

否则,对于队列,您可以在发送消息时设置消息过期。如果在该时间范围内未读取,它将被丢弃。确保设置足够的时间范围,这样服务器之间的时钟同步问题就不会成为一个因素。假设2分钟左右。

于 2018-05-24T08:24:39.447 回答