[rabbitmq-discuss] RabbitMQ/AMQP understanding

Torben Hoffmann torben.lehoff at googlemail.com
Fri Aug 22 13:57:23 BST 2008


Hi,

After having read the AMQP standard and revisited the RabbitMQ slides from
the Erlang Exchange (
http://www.lshift.net/blog/2008/07/01/slides-from-our-erlang-exchange-talk)
I still have a bit of understanding to get in place, which I hope some of
you can help me with.

Here is the basic problem I need to solve - see attached picture:
A, B and C are all members of the same group G and when they send messages
to each other in the group the group ID is used as the target address in the
message.

(In case the attached picture does not arrive: A is located at machine M1, B
@ M2 and C @ M3.)

So when A sends Msg to the group G it has to be routed to B and C where ever
they may be. As you can see A sends Msg to M1 which notices that it is
targeted to the group G and M1 then finds out that there are group members
of G at the machines M2 and M3, hence it sends Msg to M2 and M3. At the
receiving machines - M2 and M3 - the message is then delivered to the
members of the group attached to the machine.

The naïve approach would be to create a queue for the group G and have all
group members subscribe to that queue.
Questions:

   1. Does the sender receives its own message though the queue?
   2. Is there a way to notify clients like B and C that there is a message
for them in one of their queues? Or do you have to poll the queue to find
out if there is something for you? (Basically this is a question of using a
interrupt like thing vs polling.)

Now for the deployment: I cannot use a single AMQP server to handle all of
this since the load would be too high to meet the strict performance
requirements in place so some sort of distribution of the work must be done.

My initial understanding leads me to say that for the attached problem I
should create a cluster consisting of M1, M2 and M3 and then just let
RabbitMQ deal with all the nitty gritty details.
Is that a correct understanding of how to use RabbitMQ to address the basic
problem?

Cheers,
Torben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20080822/9f2cd365/attachment.htm 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: BasicProblem.png
Type: image/png
Size: 38869 bytes
Desc: not available
Url : http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20080822/9f2cd365/attachment.png 


More information about the rabbitmq-discuss mailing list