On Sat, Feb 12, 2011 at 04:45, Max Bridgewater wrote:

It's very likely that I don't really understand the concept of
exchange. So please bear with me. Say I bind the queue with routing
key "WashingtonPost" to the topic exchange "politics" using pattern
"africa.egypt.#". Now if we get rid of the concept of exchange.
Wouldn't this be equivalent to binding the "WashingtonPost" to the
pattern "politics.africa.egypt.#"?

What am I missing that makes the exchange paradigm so necessary in AMQP?


Although I can't provide a direct answer to your question, I would
say that at least from a security point of view, exchanges are very
useful as they allow me to explicitly allow / disallow which users can
either post or consume messages. (It is impossible to use ACL's on
routing keys.)

For example if I would to replace D-Bus with AMQP, only anyone
could subscribe to the "os.control" exchange (both the control daemon
but also interested users / applications), but only an OS operator
could publish messages to that particular exchange to for example
reboot the OS.

Further more, exchanges determine how routing is done -- some
based on the routing key, others based on headers -- and in recent
versions of RabbitMQ (2.2.0?) you can bind exchanges to exchanges,
thus offering you a poor-man AND / OR operators.

I hope others could provide you with a better / more to the point answer.


Search Discussions

Discussion Posts


Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 2 of 2 | next ›
Discussion Overview
grouprabbitmq-discuss @
postedFeb 12, '11 at 2:45a
activeFeb 12, '11 at 6:14p



site design / logo © 2022 Grokbase