Hi, Jonathan:<div><br></div><div>The routing work for an exchange is actually performed by the Erlang process associated with the channel you're publishing on, rather than being an independent entity as the processes that back queues are.</div>
<div><br></div><div>On a per message basis, the amount of routing work will depend on the exchange type and whatever matching behavior is implemented for it. Documentation to set your expectations for the different exchange types can be found around the RabbitMQ website, e.g. here, where the performance improvements to topic exchanges were first written up:</div>
<div><br></div><div><a href="http://www.rabbitmq.com/blog/tag/trie/">http://www.rabbitmq.com/blog/tag/trie/</a></div><div><br></div><div>...as well as in the Manning book "RabbitMQ in Action" IIRC.</div><div><br>
</div><div>Best regards,</div><div>Jerry<br><br><div class="gmail_quote">On Fri, Feb 15, 2013 at 12:56 PM, Jonathan <span dir="ltr"><<a href="mailto:jhalterman@gmail.com" target="_blank">jhalterman@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I'm curious about the impact of having many (hundreds or thousands) of binding keys on a single queue. Can I expect messages to still be routed to the queue in more or less constant time? Does it depend on the exchange type (topic versus direct)? I was thinking that routing in a direct exchange at least might be constant time since no wildcard matching is needed and might involve a simple hash lookup.<div>
<br></div><div>Thanks,</div><div>Jonathan<br><div><br></div><div><br></div></div><br>_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
<br></blockquote></div><br></div>