Ted Ross created DISPATCH-33:
--------------------------------
Summary: Use session flow control to protect the router's memory
Key: DISPATCH-33
URL: https://issues.apache.org/jira/browse/DISPATCH-33
Project: Qpid Dispatch
Issue Type: Improvement
Components: Router Node
Affects Versions: 0.2
Reporter: Ted Ross
Dispatch will allow its internal buffers to grow without bound if message
producers are faster than message consumers. It would be possible to apply
back-pressure on senders using link credits but this has some pathological
effects depending on the message routing patterns in effect (i.e. well behaved
producers may find themselves punished for others' transgressions).
A better approach is to use session-based flow control to put a cap on the
amount of memory a single producer can consume in the form of in-flight
messages. This is better because it applies back pressure only to those
producers that are over-producing. Furthermore, session flow control is
frame-based (as opposed to link-credits which are message based) which ties the
limits to actual memory use because frames are bounded in size.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]