RabbitMQ
|
MSMQ
|
|
|
- Multiplatform (Linux, Windows, Mac, etc)
|
|
|
|
Centralized vs Decentralized:
- A message broker like RabbitMQ is
a centralized message broker where messages are stored on a central or a
clustered server and client/subscriber does pubsub from this central server.
- MSMQ is decentralized and each
machine has its own queue. Client can send messages to a particular queue and
the subscriber can retrieve the message from that particular queue.
Multiplatform vs Windows only:
- RabbitMQ is multiplatform message
broker so clients from any platform can read/write messages to/from RabbitMQ. It
also has client libraries written in .NET, Java, Erlang, Ruby, Python etc.
Integration is easy.
- MSMQ is a windows machine only messaging
system.
Standards vs No Standards:
- RabbitMQ follows one of the standard
called AMQP (Advanced Messaging Queuing Protocol). If you have multiple platform
taking with each other than RabbitMQ is a better option.
- MSMQ uses its own proprietary messaging
format. If you have a use case of windows machine talking with windows machine
than MSMQ can suffice that use case.