[rabbitmq-discuss] Preserving Order Across Multiple Consumers on a Single Queue

Charles Law charles.law at openx.com
Sat Jun 30 02:52:43 BST 2012


We are setting up RabbitMQ to accept CRUD messages and talk to consumers
that will interact with our databases.  We have multiple accounts (each one
made up of many other child accounts) that have a dedicated database
instance, and their own dedicated queue.  For a particular queue/database
we would like to prevent collisions on items in the database.  Unless we
parse our messages out, that would mean that RabbitMQ would need to
preserve message order on a queue.

Ideally we want multiple consumers, with each consumer subscribed to
multiple queues.  And if possible, at any point in time, each queue would
only have 1 message being processed by our set of consumers.  We'd only
send another message from a queue out to our consumers after getting an
acknowledgement back that the current one is done.  We'll have multiple
queues, so across the different queues message order doesn't matter.

We did consider using an exclusive queues, but we want to balance our loads
so if 1 account/queue is very active, it is spread across all our
consumers.  Can we set this up fairly easily with RabbitMQ?

-- 
Charles Law   Software Developer
Watch how we make online advertising simple: http://bit.ly/Ent_vid
www.openx.com <http://www.openx.org/>   |   follow us on:
Twitter<http://twitter.com/openx>
   Facebook <http://www.facebook.com/OpenX>
LinkedIn<http://www.linkedin.com/company/openx/products>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20120629/543e77b0/attachment.htm>


More information about the rabbitmq-discuss mailing list