gpt4 book ai didi

jms - ActiveMQ 如何将未能发送给消费者的消息保留在队列/主题上?

转载 作者:行者123 更新时间:2023-12-04 19:43:08 24 4
gpt4 key购买 nike


我仍在学习这个 activemq 和 jms 的东西。我已经尝试了一些示例,现在我可以从队列/主题中生成和使用消息。

现在我有一个问题,当我的客户/消费者失去连接时,队列/主题中的消息仍然发送该消息,该消息丢失并且不保留在队列/主题中。所以我的问题是如何保留失败的消息以及如何让代理再次重新发送该消息?

谢谢

最佳答案

您有点混淆了术语。

队列将保存消息直到被消费或代理重新启动,除非消息已被标记为持久化,在这种情况下,即使在代理重新启动后它们也会保留。

主题仅将当前消息传递给任何当前订阅者。但是,您可以使用多种方法来保存发布到主题的消息:

  1. 长期订阅者。
  2. Virtual Destinations .

由于多种原因,虚拟主题往往比持久订阅者更受欢迎,但这实际上取决于用例。

如何创建持久订阅者取决于您使用什么来创建订阅者(Spring、POJO 或其他一些 API?)。所有方法都会在某个时候调用 Session.createDurableSubscriber方法,但我建议在选择虚拟主题或复合队列之前阅读它们的行为方式。

关于jms - ActiveMQ 如何将未能发送给消费者的消息保留在队列/主题上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27315255/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com