AMQP Message Transport

AMQP message transfers, also called deliveries, can occur in either direction, with AMQP links created in pairs from the parent AMQP session.

amqp message
Note: In Universal Messaging, delivery tags are mapped to a <long>:<long> naming scheme that implies <um store unique id>:<UM event EID>.

AMQP defines the following approaches with regard to message transfers (AMQP deliveries):

  • At most once
  • At least once

At Most Once

AMQP deliveries that occur through settled message transfers can be used for a "fire and forget" publishing and subscribing model, as they do not require an explicit acknowledgment.

amqp at most once model

AMQP publishing occurs when an AMQP application container (Sender) attaches a link to an AMQP node (Receiver) and initiates message deliveries. In the at-most-once model, message deliveries are sent pre-settled by the sender with no expectations of acknowledgment from the receiver.

Note: In Universal Messaging, pre-settled message transfers are mapped to UM reliable publishing.

AMQP subscribing occurs when an AMQP application container (Receiver) attaches a link to an AMQP node (Sender) causing a flow of deliveries from the sender node to the application node. In the at-most-once model, message deliveries are sent pre-settled by the sender with no expectations of acknowledgment from the receiver.

Note: In Universal Messaging, pre-settled message transfers are mapped to UM reliable subscriptions (no Durability and ACKs).

At Least Once

AMQP deliveries that occur through unsettled message transfers require an explicit settlement by using acknowledgments, whether initiated by an application container or by a broker container.

amqp at least once model

AMQP publishing occurs when an AMQP application container (Sender) attaches a link to an AMQP node (Receiver) and initiates message deliveries. In the at-least-once model, message deliveries are sent unsettled by the sender with an expectation of acknowledgment from the receiver.

Note: In Universal Messaging, un-settled message transfers are mapped to UM single event TX publishing.

AMQP subscribing occurs when an AMQP application container (Receiver) attaches a link to an AMQP node (Sender) causing a flow of deliveries from the sender node to the application node. In the at-least-once model, message deliveries are sent un-settled by the sender with an expectation of acknowledgment from the receiver. The AMQP source durability configuration indicates whether the durable subscription state should be in-memory or persistent (CONFIGURATION or UNSETTLED_STATE respectively).

Note: In Universal Messaging, unsettled message transfers are mapped to synchronous, individual ACK subscriptions.