From: Carl Trieloff <[email protected]>
Subject: Re: looping of qpid routes
To: [email protected]
Date: Thursday, October 15, 2009, 9:35 AM
Also, a header is used on the message to prevent loop
detection.
Carl.
Jonathan Robie wrote:
Bidirectional links are fine, and automatically detect
loops. Tree, star, or line topologies are fine too, and
bidirectional links between any pair of brokers are fine. A
ring topology is also possible, if only unidirectional links
are used.
Here's the rule:
For any pair of nodes A,B in a federated network,
there should be only one path from A to B. If there is more
than one path, message loops can cause duplicate message
transmission and flood the federated network. The topologies
discussed above do not have message loops. A ring topology
with bidirectional links is one example of a topology that
does cause this problem, because a given broker can receive
the same message from two different brokers. Mesh topologies
can also cause this problem.
Every message transfer takes time. For better
performance, you should minimize the number of brokers
between the message origin and final destination. In most
cases, tree or star topologies do this best.
Hope this helps!
Jonathan
H. Charles Tang wrote:
Have created 2 static routes as follows between
our 2 qpid daemons housed on two linux hosts respectively:
qpid-route route add host1:5000 host2:5000
amq.topic topic.foo
qpid-route route add host2:5000 host1:5000
amq.topic topic.foo
Does this create an infinite loop for a message
between 2 qpids? Our experiment confirmed the looping
scenario.
Then how does one create a bi-directional route?
or how do we interpret the following in the qpid
documentation:
"Routes are unidirectional. A single route
provides for the flow of messages in one direction across a
link. If bidirectional connectivity is required (and it
almost always is), then a pair of routes must be created,
one for each direction of message flow."
Finally does qpid (daemon) do loop
detection/handling?
Thanks.
Charles
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]