AMQP is the emerging standard for high performance enterprise messaging; reducing change and maintenance costs through the separation of integration concerns, removal of silo dependency, and freedom from language and platform lock-in. This has resulted in consistently excellent performance, without compromising user experience, security and scalability.
RabbitMQ enables developers of messaging solutions to benefit not only from AMQP, but also from one of the most proven systems in use, the Open Telecommunication Platform (OTP). OTP is used exclusively by telecommunications companies to manage switching exchanges for voice calls, VoIP, and now video. These systems are designed never to go down even when handling vast user loads. As such systems cannot be taken offline, they have to be extremely flexible; for instance, it must be possible to ‘hot deploy’ features and fixes whilst managing consistent user service level agreements.
Rather than creating a new messaging infrastructure, the RabbitMQ team built an AMQP layer on top of OTP using Erlang. Java tooling and clients are provided for developers and administrators to run RabbitMQ and connect to it over the AMQP wire protocol, with other language adaptors to come. This combines the robustness and scalability of a proven platform with the flexibility of AMQP’s messaging model.
John O’Hara, Executive Director at JPMorgan and Chair of the AMQP Working Group said “A strong standard needs a variety of interoperating implementations and I am pleased to welcome RabbitMQ to the family. The vision of the AMQP Working Group is that through standardisation AMQP enables businesses to reduce their integration costs and paves the way to simple, robust transaction processing between firms globally. RabbitMQ, implemented in technologies pioneered in the demanding telecommunications industry, demonstrates the innovation which can occur on the back of an open standard like AMQP.”
Version 1.0.0 Alpha binary and source distributions (along with documentation) are available for download for Generic Unix, Windows, and Debian GNU/Linux platforms. The download includes the RabbitMQ server and Java client, providing an API to AMQP. RabbitMQ is licensed under the open source Mozilla Public License.
The next phase of the project will address improved support for hot failover and AMQP clients will be extended beyond Java to other programming languages and environments. RabbitMQ will be integrated with other networks via Enterprise Service Buses such as Mule, interfaced with existing management and monitoring tools such as HermesJMS, and packaged as a Software Appliance for drop-in deployment.