Universal Messaging 10.3 | Concepts | AMQP | AMQP Guide | Flow Control
Flow Control
Session Flow Control (Platform Backpressure)
AMQP sessions have an incoming and outgoing transfer window offering session flow control semantics expressed as frame count. The window sizes are managed by participating incoming / outgoing transfers with 0 indicating a suspension offering back pressure protection to the underlying platform, shielding it from higher than expected bursts of messages.
NOTE: In Universal Messaging, session windows are not mapped directly to a UM structure but are manageable via the embedded Proton-J protocol engine (default: 16384). As we currently do not support session multiplexing, this configuration is not relevant for Universal Messaging servers who continue to offer platform backpressure via the native UM protocol.
Link Flow Control (Application Backpressure)
AMQP Links have a link credit value indicating the maximum number of deliveries the receiving end is prepared to accept. The link credit value is only modifiable by the receiving end of the link with 0 indicating a suspension offering back pressure protection to the application logic, shielding it from receiving more messages than it can handle.
NOTE: In Universal messaging, link credit is decremented by the participating transfers, with a configurable default value set if unspecified (refer to the section AMQP Plugin Configuration for details). Currently, Universal Messaging realms are unable to reliably honor link credit values of less than 100. We have plans to improve this in a future release of the product but until then, we recommend the use of store capacity to achieve such strict control.