Enterprise Integration Zone is brought to you in partnership with:

Mitch Pronschinske is the Lead Research Analyst at DZone. Researching and compiling content for DZone's research guides is his primary job. He likes to make his own ringtones, watches cartoons/anime, enjoys card and board games, and plays the accordion. Mitch is a DZone Zone Leader and has posted 2576 posts at DZone. You can read more from them at their website. View Full User Profile

Benchmark: ActiveMQ, RabbitMQ, HornetQ, QPID, and Apollo

07.29.2013
| 11265 views |
  • submit to reddit

Adina Mihailescu conducted a recent study that included message queue performance testing using a Rails application that pilots a binary and enqueues/dequeues items taken from a MySQL database.

I decided to bench the following brokers:

The tests were run on a single laptop with this configuration:

  • Model: Dell Studio 1749
  • CPU: Intel Core i3 @ 2.40 GHz
  • RAM: 4 Gb
  • OS: Windows 7 64 bits
  • Ruby 1.9.3p392
  • Java 1.7.0_17-b02
  • Ruby AMQP client gem: amqp 0.9.10
  • Ruby STOMP client gem: stomp 1.2.8
  • Ruby ZeroMQ gem: ffi-rzmq 1.0.0


-- Muriel Salvan 

The benchmarks are pretty interesting and potentially useful for anyone trying to pick a message queue for their next project.  You can see from the results why ZeroMQ is so popular these days.  It doesn't make sense for every scenario, but if you can fit it nicely into your architecture, you should probably do it, since it crushed the competition in almost every test scenario.

Comments

Adam Warski replied on Thu, 2014/07/17 - 10:12am

A related benchmark of replicated, persistent message queues, including Kafka, HornetQ, RabbitMQ, SQS and Mongo can be found here: http://www.warski.org/blog/2014/07/evaluating-persistent-replicated-message-queues/

Mitch Pronschinske replied on Thu, 2014/07/17 - 10:33am in response to: Adam Warski

 Looks awesome, Adam!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.