每次用户在我的网站上加载页面时,我都被迫创建一个新的RabbitMQ连接。
这是每次都创建一个新的TCP连接。但是,我试图通过NodeJS AMQP插件减少我对Rabbit的TCP连接数量。这就是我所拥有的:
var ex_conn = get_connection(uri); //http:rabbitm.com
if(ex_conn == false) {
var tempConn = amqp.createConnection({
url: uri
});
connections.push({
host: uri,
obj: tempConn
});
}
else {
var tempConn = ex_conn.obj;
}
我遇到的问题是,如果我尝试这样做:
tempConn.on('ready', function() {
});
然后就绪函数不会被触发。我假设,那是因为已经定义了现成的回叫,并且不会重新触发。我要做的是通过执行以下操作绑定新队列:
tempConn.queu('', {});
非常感谢您对如何解决此问题的任何想法。
感谢。