You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by Mohammad Reza Selim <se...@yahoo.com> on 2008/05/12 05:11:00 UTC

Routing algorithm used in Active MQ

Hi,

It would be helpful for my research if  
someone could answer my question. 

My (theoretical) scenario is that there are, say, 200 branches of an  
enterprise around the world. There are many clients (say 100)  
running in each branch. Those clients want a messaging service to  
communicate among them. One way is to deploy in each branch an Active MQ broker  
and let clients of a branch connect the broker in its own branch.  My  
question is how the messages from one client will be routed to another  
client. I am interested to know the routing mechanism/algorithm and it's  
complexity. As there are many clients and each can create it's own queue in the broker, the roting should really be an  
issue here (according to my view). 

For your information, MSMQ uses an algorithm called "Binary Reliable Message Routing Algorithm" which creates a least cost spanning tree among the brokers.

Thanking in advanced.


 Mohammad Reza Selim


      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ

Re: Routing algorithm used in Active MQ

Posted by Rob Davies <ra...@gmail.com>.
On 12 May 2008, at 04:11, Mohammad Reza Selim wrote:

> Hi,
>
> It would be helpful for my research if
> someone could answer my question.
>
> My (theoretical) scenario is that there are, say, 200 branches of an
> enterprise around the world. There are many clients (say 100)
> running in each branch. Those clients want a messaging service to
> communicate among them. One way is to deploy in each branch an  
> Active MQ broker
> and let clients of a branch connect the broker in its own branch.  My
> question is how the messages from one client will be routed to another
> client. I am interested to know the routing mechanism/algorithm and  
> it's
> complexity. As there are many clients and each can create it's own  
> queue in the broker, the roting should really be an
> issue here (according to my view).
>
> For your information, MSMQ uses an algorithm called "Binary Reliable  
> Message Routing Algorithm" which creates a least cost spanning tree  
> among the brokers.
>
> Thanking in advanced.
>
>
> Mohammad Reza Selim
>
>
>       
> ____________________________________________________________________________________
> Be a better friend, newshound, and
> know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ



ActiveMQ  uses a combination of dynamic subscription based routing  
(which involves subscription based aggregation to reduce the size of  
the routing tables) and network time-to-live across network hops to  
reduce the chance of looping within a network. Messages are also  
tagged with a brokerId, to prevent them passing through the same  
broker twice.



cheers,

Rob

http://open.iona.com/ -Enterprise Open Integration
http://rajdavies.blogspot.com/


Re: Routing algorithm used in Active MQ

Posted by Rob Davies <ra...@gmail.com>.
On 12 May 2008, at 04:11, Mohammad Reza Selim wrote:

> Hi,
>
> It would be helpful for my research if
> someone could answer my question.
>
> My (theoretical) scenario is that there are, say, 200 branches of an
> enterprise around the world. There are many clients (say 100)
> running in each branch. Those clients want a messaging service to
> communicate among them. One way is to deploy in each branch an  
> Active MQ broker
> and let clients of a branch connect the broker in its own branch.  My
> question is how the messages from one client will be routed to another
> client. I am interested to know the routing mechanism/algorithm and  
> it's
> complexity. As there are many clients and each can create it's own  
> queue in the broker, the roting should really be an
> issue here (according to my view).
>
> For your information, MSMQ uses an algorithm called "Binary Reliable  
> Message Routing Algorithm" which creates a least cost spanning tree  
> among the brokers.
>
> Thanking in advanced.
>
>
> Mohammad Reza Selim
>
>
>       
> ____________________________________________________________________________________
> Be a better friend, newshound, and
> know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ



ActiveMQ  uses a combination of dynamic subscription based routing  
(which involves subscription based aggregation to reduce the size of  
the routing tables) and network time-to-live across network hops to  
reduce the chance of looping within a network. Messages are also  
tagged with a brokerId, to prevent them passing through the same  
broker twice.



cheers,

Rob

http://open.iona.com/ -Enterprise Open Integration
http://rajdavies.blogspot.com/