[rabbitmq-discuss] Message routing

Sudhakar Chokkalingam (schokkal) schokkal at cisco.com
Wed Jan 23 23:06:43 GMT 2013


Simon,
Thanks for asking. Sorry for the late response. Yes Michael suggestion
helped here. The reason why we
like to distribute at queue level is,
1. As Michael, we will have multiple cores in our server where having
multiple queues will improve the performance.
2. And then, in our application we have a need to do different kind of
processing based on the message types we receive. Initially, we thought
will have multiple queues irrespective of message type and post the
message in a round robing method and then consume it for processing. In
the processing will do the deduction of message type and apply the right
processor. This was the reason why I asked for doing the round robin
distribution at queue level.

But now, we are thinking of different approach where we can avoid the
message type deduction at all, by having dedicated queue for each type and
have a dedicated consumer to process it. By this approach we think that
the elimination of message type deduction will not add bottle neck in the
processing. In this approach, if we see any bottle neck of having one
queue for one type of messages, then we may make re-think of having a
multiple queues for each type and consumers. Or May be multiple consumers
with one queue can also reduce the over load on the queue. Here the object
is the system shoe not drop any messages.

Hope this helps.
Thanks again for asking.
Sudhakar

Note:
In our application the message types are
1 E-mail 
2. SNMP Trap
3. JMS message etc 


On 1/15/13 4:53 AM, "Simon MacMullen" <simon at rabbitmq.com> wrote:

>On 14/01/13 16:36, Sudhakar Chokkalingam (schokkal) wrote:
>> Could please help me, how we can do this round-robin distribution in
>> queue level.
>
>Michael has already pointed out the existence of the consistent hash
>exchange. But there's another question: what are you trying to achieve?
>Why is having one queue and many consumers not an option? - it sounds
>like it's what you want...
>
>Cheers, Simon
>
>-- 
>Simon MacMullen
>RabbitMQ, VMware



More information about the rabbitmq-discuss mailing list