【问题标题】:RabbitMQ" What are "Ready" and "Unacked" types of messages?RabbitMQ”什么是“Ready”和“Unacked”类型的消息?
【发布时间】:2015-11-02 03:27:30
【问题描述】:

我对 RabbitMQ 中的这两种类型的消息感到困惑。

我发现我的一些队列有 0 条“Unacked”和 1000 条“Ready”消息,而有些队列有 1000 条“Unacked”和 0 条“Ready”消息。

它们有什么区别?

我如何知道消费者阅读了多少条消息?

【问题讨论】:

    标签: rabbitmq


    【解决方案1】:

    消息在等待处理时就绪

    当消费者连接到队列时,它会收到一批要处理的消息。数量在预取大小中给出。当此消费者处理消息时,他们的状态为未确认。

    Unacked 表示消费者已承诺处理它们,但尚未确认它们已被处理。当消费者崩溃时,队列知道消费者上线时要再次传递哪些消息。当您有多个消费者时,消息会在他们之间分发。

    【讨论】:

    • 值得一提的是,即使没有单个消费者,消息也已准备好(等待)。 Ready 消息由 RabbitMQ 收集。 Unacked 消息被消费者“触摸”,但相关工作尚未确认完成。
    【解决方案2】:

    取消确认: 它用于数据安全注意事项。它保证到达对等点并成功处理。万一消费者在消息处理过程中丢失并且不确认 Rabbit MQ。消息不会丢失,可供消费者再次处理。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-30
      • 2012-09-04
      • 2016-10-28
      • 2015-10-21
      • 1970-01-01
      • 2019-09-26
      • 2018-07-28
      相关资源
      最近更新 更多