Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

amqp vs amqplib - which Node.js amqp client library is better?

What are the differences between those amqp client libraries? Which one is the most recommended? What are the major differences?

like image 202
Javier del Saz Avatar asked Nov 21 '13 17:11

Javier del Saz


2 Answers

I would recommend amqp.node and bramqp over node-amqp. node-amqp has a lot of bugs and is poorly maintained, and it hides the "channel" concept which introduces a lot of problems for rabbitmq servers (because they are never closed).

like image 59
Carl Hörberg Avatar answered Oct 20 '22 00:10

Carl Hörberg


I'm the guy that wrote the bramqp library. So I'm going to admit from the start I may be a bit biased. :P

In my opinion, as long as you know the spec, bramqp should work fine. Otherwise, use amqp.node


The following are the amqp libraries available for node.js.

amqplib / amqp.node - promise style, still updated, looks pretty stable and easy

bramqp - provides a full low level access to AMQP functions, not recommended for starting out

amqp-coffee - coffeescript implementation similar to amqp/node-amqp

amqp / node-amqp - popular, fixed API, not updated as often, a few odd bugs, stable but limited


The following libraries use one of the previous libraries, while providing an easier to use interface or adding features

rabbit.js uses amqplib/amqp.node

wascally uses amqplib/amqp.node

amq uses amqplib/amqp.node

amqpea uses bramqp

easy-amqp uses amqp/node-amqp

rabbus uses wascally


I am also going to add node-amqp10 separately, as it can connect to amqp 1.0 servers.

If there are any more that I should add, just let me know.

like image 33
bakkerthehacker Avatar answered Oct 19 '22 23:10

bakkerthehacker