[rabbitmq-discuss] Install a plugin in the broker
Matthias Radestock
matthias at rabbitmq.com
Fri Aug 3 09:52:14 BST 2012
On 03/08/12 09:45, Félix López wrote:
> Let me check.
>
> Regarding the throttling:
> It's a temporary solution, I'd like to try to do good one with credit
> flow, but later.
>
> It preserves the order in what they arrive, so when a message for the
> exchange Test1 arrives a process is spawned with a timeout, the next
> message for the same exchange takes into that time, so it calculates its
> timeout basing on it.
In your code each message is passed on via a freshly spawned process.
Erlang only guarantees message order between pairs of processes. What
you have will work most of the time, particularly when message rates are
low, but there is no guarantee.
> About the rate limit with multiple concurrent publishers, why not? It
> stores the next timeout in a transaction, so the next message should
> calculate its timeout taking into account the previous message.
The reading of the previous timeout and writing of the new timeout
happen in different transactions. So multiple concurrent publishers
could all read the same value.
Matthias.
More information about the rabbitmq-discuss
mailing list