【问题标题】:AMQP - How many consumers on a queue?AMQP - 一个队列中有多少消费者?
【发布时间】:2013-05-03 09:23:06
【问题描述】:

使用 Node JS 和 RabbitMQ 的 AMQP 模块,有什么方法可以知道队列中有多少订阅者?

我们在多个地区的默认交易所有多个队列。当一个区域出现故障时,我们不会将消息路由到该队列,而是路由到正在主动侦听的下一个最佳 AMQP 队列(区域)。

有没有办法统计队列中的订阅者数量?

我们设置了心跳,因此服务器应该能够准确跟踪。

谢谢!

【问题讨论】:

    标签: node.js rabbitmq amqp


    【解决方案1】:

    我最终找到了这块金子:

    var conn = amqp.createConnection({ url: process.env.AMQP, heartbeat: 60 });
    
    conn.queue('queue-name').on('queueDeclareOk', function(args) {
      console.log('Total Consumers: ' + args.consumerCount);
    }
    

    完美运行:)

    【讨论】: