[rabbitmq-discuss] Binding to topic exchange with a negation wildcard
Laing, Michael P.
Michael.Laing at nytimes.com
Thu Sep 13 15:53:26 BST 2012
We would find a regular expression matching option for topic exchanges
My 2 cents :)
On 9/13/12 4:40 AM, "Simon MacMullen" <simon at rabbitmq.com> wrote:
>On 12/09/2012 8:37PM, Dave Curylo wrote:
>> Is it possible to bind a queue to a topic exchange with a condition that
>> the topic does NOT match a certain wildcard?
>The topic exchange doesn't have that logic. But you can fake it with the
>alternate exchange feature, at the cost of a few more exchanges.
>Declare a fanout exchange you'll publish to (let's call it
>"my-exchange"). Declare a fanout exchange called "junk".
>The when each consumer declares a queue, it also declares a topic
>exchange and a fanout exchange. The alternate-exchange for the topic
>exchange should be set to the fanout exchange. It then binds the topic
>exchange to "my-exchange", and "junk" to the topic exchange, with a
>routing key equal to the topics it doesn't want.
>Thus messages with the "bad" routing key go:
> [my-exchange] -> [per-consumer-topic] -> [junk]
>and the rest go:
> [my-exchange] -> [per-consumer-topic] -> [per-consumer-fanout] ->
>I think that's the simplest you can make it. But exchanges are cheap in
>general, it's just routing logic.
>But I wonder whether some sort of more explicit negation feature would
>be feasible / useful. Hmm.
>rabbitmq-discuss mailing list
>rabbitmq-discuss at lists.rabbitmq.com
More information about the rabbitmq-discuss