【问题标题】:How to remove specific message from queue in rabbitmq如何从rabbitmq中的队列中删除特定消息
【发布时间】:2018-11-13 03:42:51
【问题描述】:

我用的是rabbitmq。我创建了一个队列并在这里放了 10 条消息。

我只想在此处删除 10 条消息中的特定一条。有办法删除吗?

【问题讨论】:

  • 这听起来不太像“消息队列”。如果您只想删除其中一条消息,则必须在 spring 应用程序中使用合适的 RabbitListener 获取所有消息。在您确定了您的特定消息之后,您需要优雅地拒绝所有其他消息。但如果你这样做,你会发现自己陷入了一个无限循环。我猜你必须使用rabbitmq的一些工具将你的消息转发到“队列A”(有效消息)和“队列B”(无效消息)

标签: spring rabbitmq amqp


【解决方案1】:

不,没有办法直接做到这一点。一些替代方案是:

  1. 清除队列并添加回其他 9 条消息
  2. 在消费者端检查一条消息并拒绝/忽略该消息
  3. 将所有消息转发到另一个队列,除了那 1 条消息

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-20
    • 2012-10-21
    • 2015-11-05
    • 2023-04-06
    • 2014-09-17
    • 2011-03-26
    • 2014-12-09
    相关资源
    最近更新 更多