Dissecting Message Queues
This article shows a performance comparison of some of the most popular messages queues in the market. The benchmarks have been developed in Go so, as the the driver can be a critical factor in the equation, it is not a completely fair comparison but more of a overview of the situation for programs developed in this language.
I have discovered a new messages queue, NATS, and in particular gnatsd, an implementation in pure Go from the guys of Apcera that claims to reach 6 millions messages per second.
(NATS) doesn't do persistence or message transactions, but it's fast and easy to use. Clustering is supported so it can be built on top of with high availability and failover in mind, and clients can be sharded. Unfortunately, TLS and SSL are not yet supported in gnatsd (they are in the Ruby NATS) but on the roadmap.