background preloader

Apache ActiveMQ ™

Apache ActiveMQ ™

A quick message queue benchmark: ActiveMQ, RabbitMQ, HornetQ, QPID, Apollo... - Muriel's Tech Blog Lately I performed a message queue benchmark, comparing several queuing frameworks (RabbitMQ, ActiveMQ…). Those benchmarks are part of a complete study conducted by Adina Mihailescu, and everything was presented at the April 2013 riviera.rb meet-up. You should definitely peek into Adina’s great presentation available online right here. So I wanted to benchmark brokers, using different protocols: I decided to build a little Rails application piloting a binary that was able to enqueue/dequeue items taken from a MySQL database. I considered the following scenarios: Scenario A: Enqueuing 20,000 messages of 1024 bytes each, then dequeuing them afterwards.Scenario B: Enqueuing and dequeuing simultaneously 20,000 messages of 1024 bytes each.Scenario C: Enqueuing and dequeuing simultaneously 200,000 messages of 32 bytes each.Scenario D: Enqueuing and dequeuing simultaneously 200 messages of 32768 bytes each. I decided to bench the following brokers: Scenario A Scenario B Scenario C Scenario D

Apache Kafka Redis Apache Qpid™: Open Source AMQP Messaging RabbitMQ - Messaging that just works de rant: Message Queue Shootout! I’ve spent an interesting week evaluating various Message Queue products. The motivation behind this is a client that has somewhat high performance requirements. They have bursts of over a million simultaneous messages. Currently they’re using a SQL server based solution, but it’s not ideal, and I’m suggesting they look at Message Queuing products as an alternative. In order to get a completely unscientific feel for the performance of some likely contenders, I put together a little test. The candidates are: MSMQ. Getting all four MQ products up and running was fun. ZeroMQ, with its brokerless architecture doesn’t require any server process or runtime. So without further chit-chat, here are the results. As you can see, there’s ZeroMQ and the others. To be honest, I was hoping for more from Rabbit. If you’d like to run the tests for yourself, my test code is on GitHub here.

ØMQ - The Guide - ØMQ - The Guide By Pieter Hintjens, CEO of iMatix Please use the issue tracker for all comments and errata. This version covers the latest stable release of ZeroMQ (3.2). If you are using older versions of ZeroMQ then some of the examples and explanations won't be accurate. The Guide is originally in C, but also in PHP, Java, Python, Lua, and Haxe. We've also translated most of the examples into C++, C#, CL, Delphi, Erlang, F#, Felix, Haskell, Objective-C, Ruby, Ada, Basic, Clojure, Go, Haxe, Node.js, ooc, Perl, and Scala. ZeroMQ (also known as ØMQ, 0MQ, or zmq) looks like an embeddable networking library but acts like a concurrency framework. We took a normal TCP socket, injected it with a mix of radioactive isotopes stolen from a secret Soviet atomic research project, bombarded it with 1950-era cosmic rays, and put it into the hands of a drug-addled comic book author with a badly-disguised fetish for bulging muscles clad in spandex. Figure 1 - A terrible accident… How to explain ZeroMQ? <? Voila!

Related: