[rabbitmq-discuss] A few questions about RabbitMQ and the .NET Client
Matthias Radestock
matthias at rabbitmq.com
Fri Sep 2 08:59:07 BST 2011
Matt,
On 02/09/11 08:32, Matthew Whitfield wrote:
> With the headers exchanges - I had seen both sources of information
> you mentioned, but still didn't find it hugely useful - for example,
> if I want to specify a particular header can match any value when the
> x-match is set to 'all' - that's the sort of information I'd like to
> see. Maybe I am missing something?
Take a look at
http://hg.rabbitmq.com/rabbitmq-java-client/file/rabbitmq_v2_6_0/test/src/com/rabbitmq/client/test/functional/Routing.java#l156
for an example. It's in Java, but should be easy to translate into .net.
> The intermediate exchange point looks good, I will look into that.
With 'all' and 'any' you get the choice of conjunction or disjunction,
i.e. you can express "Match all these headers" or "Match any of these
headers"
By introducing intermediate exchanges you can express conjunctions of
disjunctions, i.e. "Match any of these headers AND match any of these
headers AND ...".
> With the transactions - are they really best avoided? Or are they OK
> to be used as long as we understand the consequences?
Both. If there is a reasonably straightforward way to write your app w/o
relying on AMQP transactions, e.g. by using 'confirms', etc, then I'd
encourage you to do so. If, OTOH, transactions really are by far the
most convenient approach, and you understand their behaviour in AMQP and
Rabbit, then by all means use them.
Regards,
Matthias.
More information about the rabbitmq-discuss
mailing list