I just found by setting "duplex=true" connection for every broker, some channels between brokers are blocked.
So here is my problem again: I have brokers A,B,C,D and only 1 consumer connected to A, according to the network connections, all the messages from B,C and D should be forwarded to A and get consumed. But after running for a while, I restart the consumer and make it connect to B. Some messages just stay in A and not being forwarded to B. (when I look into it, I found those stuck messages in A are all from broker B,C and D. They have been forwarded to A before I restart the consumer). In this case, how to adapt the borkers to make all the messages consumed? Tim Bain wrote > If all brokers connect to all other brokers using duplex="false", then you > have a complete graph and messages can pass from any broker. So I don't > think duplex has anything to do with your problem. (Though if you have a > duplex connection from every broker to every other broker, then there are > two bi-directional connections between any two nodes, and I don't know how > that would behave; where I've worked with networks of brokers, I've always > avoided having more than one identical network connector between any pair > of nodes.) > > Even if you have connectivity between all nodes, you won't forward > messages > if 1) they've exceeded the max TTL (note: I'm talking about network hops, > NOT JmsExpiration), or 2) they've already been sent to that node and would > now need to be sent back to it. #2 got addressed by your > replayWhenNoConsumer setting. For #1 (which didn't get discussed here), > you might want to check that you've set your TTL high enough to support > the > maximum number of forwards the message would need in your absolute > worst-case scenario (clients repeatedly hopping between brokers, etc). > > Tim > > On Thu, Jul 23, 2015 at 8:11 PM, Cadmean < > hzcadmean@ > > wrote: > >> This problem has been solved by : >> >> 1. setting F5 load balancer as : least connection & session keeping >> >> 2. setting networkConnector as : remove localhost, duplex="true", >> dynamicOnly="true" >> >> 3. setting destination policy as : replayWhenNoConsumer="true" >> >> I think the main problem of my question is duplex="false", which means >> the >> messages forwarded from other brokers cannot replay. >> >> >> >> -- >> View this message in context: >> http://activemq.2283324.n4.nabble.com/message-stucks-in-4-brokers-network-tp4699427p4699769.html >> Sent from the ActiveMQ - User mailing list archive at Nabble.com. >> -- View this message in context: http://activemq.2283324.n4.nabble.com/message-stucks-in-4-brokers-network-tp4699427p4699892.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.