如何使用 NodeJs (amqplib) 获取 RabbitMQ 队列的未确认消息计数。
checkQueue
我们可以使用orassertQueue
方法轻松获取队列的总消息数。
我有很多动态队列,这些队列被多个消费者使用,我想在所有作业处理完毕后删除队列。
问题是当消费者附加到队列时,我正在检查消息计数是否为零,如果消息计数为零,则我删除队列,但当时如果该队列有一些未确认的消息但消息计数为零,那么我该如何处理。
如何使用 NodeJs (amqplib) 获取 RabbitMQ 队列的未确认消息计数。
checkQueue
我们可以使用orassertQueue
方法轻松获取队列的总消息数。
我有很多动态队列,这些队列被多个消费者使用,我想在所有作业处理完毕后删除队列。
问题是当消费者附加到队列时,我正在检查消息计数是否为零,如果消息计数为零,则我删除队列,但当时如果该队列有一些未确认的消息但消息计数为零,那么我该如何处理。
在这种情况下,您可以将自动删除标志设置为创建队列并在使用时检查队列大小。
当队列大小为 0 时,您只需停止此消费者的消费过程并关闭此消费者的通道。当所有消费者关闭他们的通道队列时,RabbitMQ 将自动删除。