By default, the dynamicOnly option is set to 'false'. With this setting a
broker will forward a message to another broker even if that broker no
longer has an 'active' consumer for the target destination. So if you're not
careful, you can end up in the pitfall described in the "Configuration
Pitfall with Queues" section of this page. 

http://activemq.apache.org/networks-of-brokers.html

By setting dynamicOnly to true, you ensure that messages are forwarded only
to those brokers with currently 'active' consumers. 

Joe



cmagoyrk wrote:
> 
> Thanks for that analysis.  I looked up the 'dynamicOnly' feature and I
> didn't see how that should prevent messages from being routed to the
> remaining active consumer, are you sure it isn't something to with the
> networkTTL? (you are obviously more experienced with Network of Brokers
> than I am, perhaps I am missing something?)
> 
> ttmdev wrote:
>> 
>> Here's what I experienced. I had two brokers B1 and B2. On each of these
>> brokers I had an "active" consumer subscribed to a queue called Q1. I
>> brought up a producer that connected to B1 and produced messages to Q1
>> that pertained to a message group. All the messages got routed to the
>> consumer connected to B1. I then had the producer connect to B2 and
>> produce the same set of messages; all the messages ended up being routed
>> to the consumer on B1 instead of the local consumer on B2. So no matter
>> which broker the producer connects to, the message group ends up being
>> routed to the first consumer to consume the message group. 
>> 
>> Use caution though, because if you bring down the consumer on B1, the
>> messages will continue to be routed to B1 instead of the remaining active
>> consumer on B2. This is probably because 'dynamicOnly' is set to false by
>> default. Hope this helped - Joe
>> 
>> 
>> 
>> 
>> 
>> cmagoyrk wrote:
>>> 
>>> I would like to setup a network of brokers on a set of boxes (b1, b2,
>>> bn).  The brokers will allow an arbitrary producer to place a message on
>>> a queue, have a consumer connect to any of the brokers, and consume that
>>> message.  That is fairly well documented.  What I am concerned with is,
>>> if a producer connects to an arbitrary broker, say b3, and adds a
>>> message as part of a message group, will the network of brokers send
>>> that entire group to a single consumer, or do the 'Exclusive
>>> Consumer/Message Group' features only work with respect to a single
>>> consumer?
>>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Network-of-Brokers-and-Exclusive-Consumer-Message-Groups-tp14591022s2354p14608864.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to