[rabbitmq-discuss] Can I get this behavior through a custom plugin?

Laing, Michael michael.laing at nytimes.com
Mon Oct 21 12:07:03 BST 2013


If you know the clients ahead of time you can set up a queue per client
instead of a single consolidated queue.

Then subscribe to each queue from each worker (or a subset of workers) with
prefetch = 1 using ack.

Michael


On Sun, Oct 20, 2013 at 8:36 PM, Dan Larkin <dan at danlarkin.org> wrote:

> Hi all,
>
> I have an interesting serialization requirement for my app:  I need to
> enforce that only one message with the same AMQP header "client" is ever
> out for delivery in any given snapshot of time.
>
> Right now I have messages flowing into rabbit to a "direct" exchange, all
> with "client" headers. And since I have multiple worker nodes pulling from
> the queue they're ending up in, it's possible for two messages with the
> same "client" header to be processed at the same time. And the goal here is
> to prevent that from happening.
>
> I thought at first this might be possible with a custom exchange, but
> afaict exchanges are basically limited to controlling how messages get
> routed, not how they get delivered.
>
> So my question is simply:  is this behavior possible?
>
> Thanks for your help,
> Dan
>
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20131021/4b188817/attachment.htm>


More information about the rabbitmq-discuss mailing list