[openamq-dev] round-robin queues
Pieter Hintjens
ph at imatix.com
Sat Feb 9 14:53:48 CET 2008
On Feb 9, 2008 1:23 PM, Esteve Fernandez <esteve at sindominio.net> wrote:
> Hi all, is there way to dispatch messages only once if two queues are bound to
> the same exchange with similar arguments?
Short answer: no. Longer answer: round-robining is what single queues
are designed for. Queues are designed to be entirely independent of
each other. If you are trying to use multiple queues but in a
dependent fashion, your model wrong.
AMQP does not impose any limit on the number of queues a broker can
handle - millions, billions, trillions. The limitations are:
- the broker itself, e.g. OpenAMQ was designed to handle around 100k
queues at most
- the client-to-broker dialog, i.e. creating a million queues might
take quite a long time
Lastly, my suspicion is that you may be solving a non-issue. If you
use a single queue to handle many types of message, they will also be
round robined, the only difference between a million types in 1 queue
and 1 type in each of a million queues is that messages will be
processed with less granularity, i.e. small ones may get stuck behind
large ones.
So, my guess is that your ideal architecture consists of a very small
number of queues (two?) that reflect the average size of the message
type. You put books and magazines in one queue, and dvds in the
other.
-Pieter
More information about the openamq-dev
mailing list