The SpringSource division of VMware today announced the acquisition of Rabbit Technologies, an open source company in the U.K. specializing in enterprise messaging software. SpringSource says the company’s flagship RabbitMQ open messaging system will be an integral part of its future cloud offerings.
SpringSource wrote in a FAQ on the acquisition that it would keep RabbitMQ, which is based on the open standard Advanced Message Queuing Protocol (AMQP), open source. The company also said it would continue to fully support the RabbitMQ developer community.
RabbitMQ has a track record of use as the backbone of messaging servers for cloud computing environments. Its integration with SpringSource will likely make it a compelling messaging option for developers building private and public cloud applications on Spring Java. As it is built on AMQP, RabbitMQ can be used for application and service messaging as well as communication with front end systems like end user applications.
Spring users most often use JMS for messaging, said Rod Johnson, general manager of VMware SpringSource, when we spoke earlier.
“But we are now seeing greater interest in AMQP, specifically Rabbit, than in the past,” said Johnson. “Spring will continue to integrate with a wide variety of JMS providers and what we will be doing is trying to make sure that Rabbit is a very attractive option for the spring community.”
Johnson said AMQP is arguably better suited to federation than JMS. Many cloud environments are multi-language and multi-platform. Where this is the case, having something tied to Java, like JMS, can be more problematic. For instance, Johnson said if you use a product with a JMS binding, you may get stuck using its proprietary bindings on other platforms. On the other hand, AMQP, as a standard, is available in multiple languages and favors interoperability.
Alexis Richardson, CEO of Rabbit Technologies, gave an example of someone wanting to deploy a cloud service that would be used by all the different mobile phone platforms. How a developer push data to those mobile devices?
“They can either build a whole lot of different clients and somehow wire them up to JMS,” said Richardson, “Or they can use a protocol, which is supported independent of the platform by individual platform providers.”
When going with a protocol, AMQP joins HTTP, XMTP and HTML5 in the developer’s arsenal – with the added benefits around things like queuing, data delivery and content routing.
“So really its about combining the benefits of something like HTTP with something like JMS, which is specific to Java,” said Richardson, “But in an open manor suitable for cloud deployments.”