You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Alan Conway <ac...@redhat.com> on 2017/02/23 18:39:29 UTC

Review Request 56993: QPID-7677: C++ broker AMQP 1.0 subscription uses more memory than 0-10

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/56993/
-----------------------------------------------------------

Review request for qpid and Gordon Sim.


Bugs: QPID-7677
    https://issues.apache.org/jira/browse/QPID-7677


Repository: qpid-cpp


Description
-------

AMQP 1.0 allocates a per-session buffer for unacknowledged message
deliveries. By default it holds up to 5000 deliveries. This commit adds the
qpidd option --session-max-unacked so the buffer can be made smaller if the
broker has a large number of sessions and the memory overhead is a problem.

The following values (in Kb) give an idea of the overhead per session, the
actual values will vary by platform and build type:

RSS per client for AMQP 0.10: 142
RSS per client for AMQP 1.0
qpidd --session-max-unacked=100: 	227 (diff 85)
qpidd --session-max-unacked=1000: 	349 (diff 207)
qpidd --session-max-unacked=5000: 	846 (diff 704)

The broker sending messages on a session without waiting for acknowledgement up
to the session-max-unacked limit (it may stop sending before the limit if the
aggregate link credit for the session is lower.) Once it reaches the limit it
will wait for acknowledgement from the client before sending more messages.


Diffs
-----

  src/qpid/broker/Broker.h af1144eeb054050bef64339c86828baffffa9508 
  src/qpid/broker/Broker.cpp 77674692abe57bb8ee046aec6a9901baa1784216 
  src/qpid/broker/BrokerOptions.h 7207c17f910e48e1f66033d40810fa8888b26b45 
  src/qpid/broker/amqp/Outgoing.cpp abd96a61e90b88ad5c4313e41794cae32b7078e3 

Diff: https://reviews.apache.org/r/56993/diff/


Testing
-------


Thanks,

Alan Conway


Re: Review Request 56993: QPID-7677: C++ broker AMQP 1.0 subscription uses more memory than 0-10

Posted by Gordon Sim <gs...@redhat.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/56993/#review166562
-----------------------------------------------------------


Ship it!




Ship It!

- Gordon Sim


On Feb. 23, 2017, 6:39 p.m., Alan Conway wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/56993/
> -----------------------------------------------------------
> 
> (Updated Feb. 23, 2017, 6:39 p.m.)
> 
> 
> Review request for qpid and Gordon Sim.
> 
> 
> Bugs: QPID-7677
>     https://issues.apache.org/jira/browse/QPID-7677
> 
> 
> Repository: qpid-cpp
> 
> 
> Description
> -------
> 
> AMQP 1.0 allocates a per-session buffer for unacknowledged message
> deliveries. By default it holds up to 5000 deliveries. This commit adds the
> qpidd option --session-max-unacked so the buffer can be made smaller if the
> broker has a large number of sessions and the memory overhead is a problem.
> 
> The following values (in Kb) give an idea of the overhead per session, the
> actual values will vary by platform and build type:
> 
> RSS per client for AMQP 0.10: 142
> RSS per client for AMQP 1.0
> qpidd --session-max-unacked=100: 	227 (diff 85)
> qpidd --session-max-unacked=1000: 	349 (diff 207)
> qpidd --session-max-unacked=5000: 	846 (diff 704)
> 
> The broker sending messages on a session without waiting for acknowledgement up
> to the session-max-unacked limit (it may stop sending before the limit if the
> aggregate link credit for the session is lower.) Once it reaches the limit it
> will wait for acknowledgement from the client before sending more messages.
> 
> 
> Diffs
> -----
> 
>   src/qpid/broker/Broker.h af1144eeb054050bef64339c86828baffffa9508 
>   src/qpid/broker/Broker.cpp 77674692abe57bb8ee046aec6a9901baa1784216 
>   src/qpid/broker/BrokerOptions.h 7207c17f910e48e1f66033d40810fa8888b26b45 
>   src/qpid/broker/amqp/Outgoing.cpp abd96a61e90b88ad5c4313e41794cae32b7078e3 
> 
> Diff: https://reviews.apache.org/r/56993/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Alan Conway
> 
>