activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From chicagoclimber <>
Subject flow control and durable queues
Date Fri, 18 Apr 2008 15:28:30 GMT

Is it possible to use producer flow control with durable queues? Online
documentation seems to say that flow control only controls the size of the
in-memory queue. 

What I am trying to achieve is some sort of queue multiplexing. I have a
bunch of input queues that are served by a farm of consumers. For multiple
reasons, I don't want each consumer to subscribe to each input queue.
Instead I want to have all consumers subscribe to the same output queue.
Messages from all input queues will be routed to this output queue. The
requirement I have is that if a message is put on an _empty_ input queue
then it should be processed without much delay. This means that I need to
have some flow control/throttling for propagation of messages from input
queues to the output queue to ensure that a burst of messages on one queue
does not block processing of other queues.

I don't want to use time-based throttling (e.g. restrict number of message
per second) as it is agnostic of the actual load on the farm of consumers.
What I would ideally want to do is to restrict the size of the output queue
by blocking producers using flow control mechanism.

It seems that I would be able to use flow control as I described above with
a non-durable output queue. Is it possible to do this with a durable queue?
If not, is there any other way to achieve controllable "queue multiplexing"
using ActiveMQ/Camel?


View this message in context:
Sent from the ActiveMQ - User mailing list archive at

View raw message