node-amqp
node-amqp copied to clipboard
Handle failover in amqp
Is there any way to connect two rabbitmq servers while connecting from node. In present version 0.1.3 it is only supporting single connection to rabbitmq server. Actually the rabbitmq is running in clustered environment, if one connection is failed iam unable to connect other rabbitmq node.
I tried by adding close listener to handle the fail condition and it worked fine for first connect and for second connect the socket is closing.
Multiple connections would be a nice feature.
This does work if you pass in an array of hostnames for the addresses. You can also use hostPreference inside your config as well to specify preference for a specific host
It will be highly appreciated if an example of how to supply an array of hostnames, since I couldn't find an example or an explanation in the docs.
:+1:
Hi
Am using amqplib/callback_api. how can i list all the rabbit nodes in the connection url.
Unfortunately as far as I'm aware you can't. We'd all be grateful for a pull request though! :-)
Sent from my iPhone
On 11/07/2015, at 12:33 am, PreethiBabu87 <[email protected]mailto:[email protected]> wrote:
Hi
Am using amqplib/callback_api. how can i list all the rabbit nodes in the connection url.
Reply to this email directly or view it on GitHubhttps://github.com/postwait/node-amqp/issues/107#issuecomment-120399671.
So how will I be able to perform multiple connections using nodejs other than amqplib/callback_api? Any other package can be used?
And I see your comment above stating that array of host names work.. What's the npm package that's required in order to get it work
@PreethiBabu87 its this package. Just don't use URLs to connect, do what is suggested at the top of the README:
var connection = amqp.createConnection({ host: 'dev.rabbitmq.com' });
However for multiple hosts, do:
var connection = amqp.createConnection({ hostArray:
[ 'dev.rabbitmq.com', 'host2', 'host3'] });