[erlang-questions] OTP Design
Thu Aug 18 23:09:08 CEST 2011
On Thu, Aug 18, 2011 at 3:08 PM, David Mercer <> wrote:
> On Thursday, August 18, 2011, Garrett Smith wrote:
>> Apart from prototyping, I don't generally use distributed Erlang (i.e.
>> starting named nodes) but prefer to use other messaging protocols
>> (e.g. AMQP, 0MQ, REST, etc).
> Do you have any thoughts on 0MQ vs. AMQP?
They're pretty different. 0MQ is more of a toolkit for building your
own messaging systems.
For centralized broker models, AMQP is great. RabbitMQ is very solid.
And of course it's Erlang. I have nothing but good things to say about
My problem with AMQP is that it tends to become a central
architectural feature -- similar to the big, centralized relational
databases. All of a sudden, you're feeding and caring for the broker
-- and if it goes down, it takes a lot with it.
AMQP is also a complicated protocol, which tends to cause problems for
people implementing it. So, while there are quality servers and
clients for it -- be prepared for hard-to-fix problems along the way.
0MQ is a counter point to this: support for federated and flexible
topologies and simple protocol. There is a NIF based Erlang binding
for it, which is excellent.
You might find this interested, if you haven't seen it already:
More information about the erlang-questions