As I often have to repeat to people: don't use RabbitMQ unless you need durable messaging. That is to say, if losing a message is catastrophic, and in the event your broker goes down, you are guaranteed to still retain your messages, then I'd recommend RabbitMQ. For example, you do not want to lose a queued financial trade.<p>Most people really don't need durable messaging. They are typically offloading asynchronous work jobs via messaging. This is where a broker-less technology like ZeroMQ makes sense. You can achieve the same high-availability architecture without having to worry about the availability of your RabbitMQ choke point separating you from your worker instances.