RabbiMQ什么是“Ready”“Unacked”类型的消息

时间:2015-08-10 09:15:23

标签: rabbitmq

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

我看到我的一些队列中有0个“Unacked”和1000个“Ready”消息 其中一些有1000条“Unacked”,0条“Ready”信息。

它们之间有什么区别?

我觉得两者都是一样的。

我怎么知道消费者有多少消息被读取?

2 个答案:

答案 0 :(得分:75)

等待处理的消息就绪

当消费者连接到队列时,它会获得一批要处理的消息。该数量以预取大小给出。当这个消费者正在处理这些消息时,他们会获得未被许可的状态。

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

答案 1 :(得分:4)

enter image description here

未确认: 用于数据安全注意事项。它保证可以到达对等方并成功处理。如果用户在消息处理之间丢失并且不确认Rabbit MQ。邮件不会丢失,并且可供消费者再次处理。