ActiveMQ 5.x allows messages to be delivered to local consumers over remote ones via the decreaseNetworkConsumerPriority property as described at http://activemq.apache.org/networks-of-brokers.html. JMSXGroupID will not achieve this goal for the reasons you described.
Also, I dispute your claim that what you want is non-persistent messaging. Non-persistent messages are ones that you don't mind losing in the event of a broker restart, where durability does not matter. In this email thread, you're looking for a way to not lose your messages when one broker fails, which means you're not looking for non-persistent messages. You want persistent messages, you just didn't know it. Tim On Fri, Oct 13, 2017 at 1:32 PM, pypen <py...@gmx.net> wrote: > Thank you both for your answers. > Yes, Justin, that's what I meant (non-persistent messaging). > > I guess, I will have to look into different solutions. > Is it for example possible to force messages to be always sent to a local > consumer, if one exists, otherwise to a remote consumer (if one exists and > no local consumer is running)? And if the local consumer starts again to > send all messages to the local consumer? It looks like the JMSXGroupID > seems > to work for the case that the local consumer receives the first message and > all following messages will be delivered to that same consumer, until this > consumer is stopped. The problem is that once another (remote) consumer is > "pinned", the local consumer will not receive messages until that remote > consumer is stopped. > > > > -- > Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User- > f2341805.html >