Universal Messaging Support for AMQP
Advanced Message Queueing Protocol (AMQP) 1.0 is a binary networking protocol that standardizes messaging middleware communications as defined by standards body OASIS and ISO/IEC 19464:2014.
The following table describes the AMQP features that Universal Messaging supports.
| AMQP Feature | Comments |
|---|---|
| TCP and TLS transport | Alternative support only, not negotiated TLS |
| Transactional publishing to topics and queues | Restricted only to local transactions because Universal Messaging does not support distributed transaction coordinators. |
| New Universal Messaging protocol layer threading module | AMQP performance and stability improvements |
| Plain and SASL authentication | SASL mechanisms are limited to the ones provided by the underlying JVM. |
| Non-transactional publishing to topics and queues | |
| Synchronous and asynchronous subscription to topics and queues | |
| Durable subscribers | Not all durable types. |
| Interoperability with Universal Messaging publishers and subscribers using any of the available client APIs | Requires complete transformation (needs protobuf support). |
| Temporary topics and queues | Only session lifetime policy. |
| Connection keep alives | |
| Credit-based flow control | Credit values < 100 cannot be reliably enforced |
| Interoperability with existing AMQP JMS clients (SwiftMQ, Apache QPID) | |
| Event transformation API | Reduces marshalling on pure AMQP deployments, allows custom mapping definitions against the default AMQP message format. |