2014-01-29 47 views
1

我正在写一个程序,通过heroku上的amqp与rabbitmq一起工作。为什么建立这么多连接?

我的计划的一部分有这样的代码:

console.log('APP START'); 

//Connect to db and start 
global.controllers.db.opendb(dbsettings, function(error,db){ 
    if (!error){ 
    global.db = db; 
    console.log('DB: connection to database established.'); 

    var con = amqp.createConnection({ url: global.queue.producers.host }); 
    con.on('ready', function() { 
     console.log('mq: producers connection ready.'); 
    }); 
    } 
}); 

当我从文档明白我应该成功连接后,只得到一个消息队列服务。

有什么特别的原因,为什么我的输出有很多含有MQ行:生产者连接就绪。this那么?

回答

0

当连接丢失或者代码发生错误时,amqp-node库会自动重新连接。我看不出上面的代码有什么问题,但是如果有任何例外情况出现在与兔子相关的代码中(也可能在其他地方,例如连接和订阅队列),amqp-node会尝试重新建立连接 - 并保持得到相同的异常并继续重试。

相关问题