【问题标题】:How can I get unacked messages count of a RabbitMQ queue using NodeJs (amqplib)如何使用 NodeJs (amqplib) 获取 RabbitMQ 队列的未确认消息计数
【发布时间】:2021-04-29 06:08:02
【问题描述】:

如何使用 NodeJs (amqplib) 获取 RabbitMQ 队列的未确认消息计数。

我们可以使用checkQueueassertQueue 方法轻松获取队列的总消息数。

我有很多动态队列,这些队列被多个消费者消费,我想在所有作业处理完毕后删除队列。

问题是当消费者附加到队列时,我正在检查消息计数是否为零,如果消息计数为零,则我删除队列,但当时如果该队列有一些未确认的消息但消息计数为零,那么我该如何处理。

【问题讨论】:

    标签: node.js rabbitmq node-amqplib


    【解决方案1】:

    在这种情况下,您可以将auto-delete flag 设置为在创建时排队并在使用时检查队列大小。

    当队列大小为 0 时,您只需停止此消费者的消费过程并关闭此消费者的通道。当所有消费者关闭他们的频道队列时,RabbitMQ 将自动删除。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-21
      • 1970-01-01
      • 2020-02-01
      • 1970-01-01
      • 2013-05-17
      • 2020-03-14
      相关资源
      最近更新 更多