【问题标题】:ActiveMQ - How do I ignore undelivered messagesActiveMQ - 如何忽略未传递的消息
【发布时间】:2023-03-19 13:20:01
【问题描述】:

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

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

提前致谢。

【问题讨论】:

    标签: activemq activemq-cpp


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-22
      • 2018-08-25
      • 2014-08-13
      • 1970-01-01
      • 2014-06-28
      • 2015-02-11
      • 1970-01-01
      • 2010-09-07
      相关资源
      最近更新 更多