One thing that might be a concern for you is the possibility of a message on broker A going to B because B has a connection to C, but that connection is dropped before B can forward the message to C. If I has another route to C (e.g. through D) but B doesn't have any other route there, then the message might get stranded on B (because it's not allowed to be routed back through a broker - A - that it's already been through) until the B-C connection is re-established. So you'll eventually get the message delivered, but it might take a long time even though a (very circuitous) path exists from B to C. If that's a concern for you, look at the Stuck Messages section of http://activemq.apache.org/networks-of-brokers.html for a solution along with some caveats.
Broker topology illustration for my example (X is your disconnected link): B / X A C \ / D On Wed, Oct 29, 2014 at 9:55 AM, Hadrian Zbarcea <hzbar...@gmail.com> wrote: > Yes, it can. I implemented something similar. When connections are > restored the messages get processed. > That's the short answer. > > Hadrian > > > On 05/11/2014 07:23 AM, Frank Gevaerts wrote: > >> Hello, >> >> I need to build a system with a number of hosts connected through an >> unreliable mesh network where the hosts are physically moving, i.e. >> all connections are expected to drop regularly, and hosts that used >> to be one hop apart might suddenly be three hops apart or not connected >> at all. >> The network might occasionally be split in such a way that two sets of >> hosts never see each other directly, but one (or more) hosts are more >> mobile and move between sets, and could therefore store and forward >> messages. >> >> All hosts need to (eventually) get data from all other hosts, and can't >> lose data. Can activemq handle such a setup? >> >> Frank >> >> >