将未确认的消息重新传递给同一使用者,而无需关闭通道或重新启动代理

时间:2019-05-03 19:50:24

标签: rabbitmq amqp

请考虑以下情形:

  • 消息被放入队列中。队列被声明为持久队列。

  • 单个使用者从队列中获取消息,但不确认。使用者对消息执行了基本消耗。这时,我可以在Rabbitmq管理网站上看到ready_message计数减少1,而messages_unacknowledged计数增加1。

  • 此后,对邮件的传递标签/信息执行了带有重新排队的基本拒绝。队列中的message_ready和message_unacknowledged计数仍然相同。

现在,我在同一渠道的同一消费者上执行了基本恢复。但是,即使在执行基本恢复并添加一些睡眠之后,message_unacknowledged计数也不会减少1,而message_ready计数却增加1。 最后,当我关闭当前频道时,看到message_unacknowledged计数减少1,而message_ready计数增加1。 我的问题是,除非关闭RabbitMQ中的当前频道,否则不可能在同一使用者上恢复未确认的消息吗?

0 个答案:

没有答案