Pivotal RabbitMQ 3.3.0 is the latest commercial release of the popular, open source RabbitMQ message broker. RabbitMQ 3.3.0 is a significant feature release of the product and for the first time bundles the Pivotal RabbitMQ JMS Client 1.2.0 and broker support for JMS, further easing how java developers connect and scale their JMS applications.
The new Pivotal RabbitMQ 3.3.0 release contains many new features and enhancements, as well as bug fixes, that improve performance, observability and ease of use across multiple dimensions of the product.
RabbitMQ 3.3.0 Enhancements
- Improved performance, particularly in clustered configurations.
- Improved performance on certain AMQP features (mandatory flag, prefetch).
- Consumer bias reduces or prevents queue growth when fast publishers compete with consumers for broker resources.
- Faster broker startup and shutdown, especially in the presence of many durable queues.
- Cycle elimination provides smarter routing for messages forwarded over Federation.
Improved visibility into server performance eases the finding of bottlenecks in production systems. It is now much easier to understand RabbitMQ’s performance under rate-limiting conditions and adjust one’s strategy accordingly.
Ease of Use and Flexibility
For further details, see the release notes.
JMS Client for Pivotal RabbitMQ 1.2.0
The JMS Client for RabbitMQ, included with Pivotal RabbitMQ, implements the JMS 1.2 specification and allows JMS applications to use RabbitMQ as their messaging broker. In RabbitMQ 3.3.0 the broker plugin that implements the JMS exchange type is built-in for the first time, and no longer requires a separate download and installation procedure. The Pivotal distribution of the RabbitMQ Java client also now includes the JMS Client for RabbitMQ for the first time.
The JMS Client for Pivotal RabbitMQ version 1.2.0 works with the RabbitMQ 3.3.0 broker and client and includes multiple improvements:
- Version checking: The Java client now validates its compatibility with the broker JMS plugin when affected operations are performed.
- Queue browsing: Support for QueueBrowsers, with or without selectors, has been added.
- Group Message Acknowledgement: Clients can acknowledge messages individually and in any order. For details see Group and individual acknowledgement.
- Arbitrary Message Support: The JMS Client for RabbitMQ can now send any object that implements javax.jms.Message, even if it wasn’t created by the client as an instance of RMQMessage. Details are available in the documentation on arbitrary message support.
For More Information
About the Author