Wikipedia
RabbitMQ is open source message broker software (sometimes called message-oriented middleware) that implements the Advanced Message Queuing Protocol (AMQP). The RabbitMQ server is written in the Erlang programming language and is built on the Open Telecom Platform framework for clustering and failover. Client libraries to interface with the broker are available for all major programming languages.
Rabbit Technologies Ltd., develops and provides support for RabbitMQ. Rabbit Technologies started as a joint venture between LShift and CohesiveFT in 2007, and was acquired in April 2010 by SpringSource, a division of VMware. The project became part of GoPivotal in May 2013.
The source code is released under the Mozilla Public License. The project consists of:
- The RabbitMQ exchange server itself
- Gateways for HTTP, Streaming Text Oriented Messaging Protocol (STOMP), and MQTT protocols
- AMQP client libraries for Java, .NET Framework, and Erlang. (AMQP clients for other languages are available from other vendors.)
- A plug-in platform for custom additions, with a pre-defined collection of supported plug-ins, including:
- A "Shovel" plug-in that takes care of moving or copying (replicating) messages from one broker to another.
- A "Federation" plug-in that enables efficient sharing of messages between brokers (at the exchange level).
- A "Management" plug-in that enables monitoring and control of brokers and clusters of brokers.