phpamqplib消耗并忘记未确认的消息

时间:2018-10-01 10:07:45

标签: php rabbitmq php-amqplib

我正在尝试了解phpamqplib的未确认消息的行为。

我已将问题放在这里: https://gist.github.com/f2r/0632b651a3b27a2c189652b753f45e49

首次执行结果:

Queue: queue.test, message count: 4, consumer count: 0
Queue: queue.test, message count: 0, consumer count: 1
Message 1 => unknow
Message 2 => ack
Message 3 => ack
Message 4 => end

如您所见,在消费之前有4条消息,在消费之后(等待之前)恰好没有消息。此外,我的“未知”消息没有重新发送。

现在,如果我重新启动脚本,则结果如下:

Queue: queue.test, message count: 5, consumer count: 0
Queue: queue.test, message count: 0, consumer count: 1
Message 1 => unknow
*** redelivered
Message 1 => unknow
Message 2 => ack
Message 3 => ack
Message 4 => end

现在,我有5条消息,而我之前的“未确认”消息在这里。

问题:为什么在回叫(和ack / nack)之前消耗掉所有消息?

弗雷德里克

0 个答案:

没有答案