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: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to