RabbitMQ and AMQP

RabbitMQ Universe

I am one of the original core developers of RabbitMQ, http://www.rabbitmq.com/. RabbitMQ is an Erlang/OTP-based implementation of AMQP, the Advanced Message Queueing Protocol.

I worked on the project from its beginnings in 2006 up through 2010 when I decided to move on to other projects. I wrote much of the code in the first version of the server, and I’ve been involved with almost every aspect of the project, including documentation (I wrote big chunks of the user and developer manuals), consultancy, and giving talks at various venues explaining various aspects of the system.

Besides the core code, I’ve also written a number of extensions to the system:

I’ve also written a few AMQP client libraries, suitable for use with any AMQP 0-8 or 0-9-1 server, not just RabbitMQ:

The AMQP specification

I’ve also contributed to the AMQP specification development process: RabbitMQ is a member of the AMQP working group. I’ve personally spent time working on AMQP’s session management, batch acknowledgement protocols, transactional protocols, and on-the-wire binary message formatting.