I don't have enough information to understand you problem fully. But perhaps you could use a combination of duplicate detection and diverts could solve your problem.
https://activemq.apache.org/artemis/docs/1.4.0/duplicate-detection.htm https://activemq.apache.org/artemis/docs/1.4.0/diverts.html Cheers Martyn On Mon, Oct 3, 2016 at 2:54 PM, Lachezar Dobrev <l.dob...@gmail.com> wrote: > Hello all, > > I have a design problem: a topic is clustered in a network of brokers to > allow multiple nodes to handle events occurring in other nodes: i.e. a user > logs in on one node, but all nodes *might* need to know that. > A new requirement has surfaced, that copies of these messages need to be > sent to an external system (not a messaging system). The trivial solution > is to add a new subscriber to the Topic that handles the delivery, but > since this is a distributed system of equivalent nodes that ends up sending > the message multiple times, one per node in the cluster. > > My current solution is to use Springframework's infrastructure (which the > Application is based on), and override the JMSTemplate with a custom one > that sends a copy of every message sent to the Topic to a special Queue > that the deliverer is handling. This seems to work just fine. > > I'm wondering if there is any out-of-the-box solution to this problem > provided by Artemis. Like routing/duplication/monitoring that I can turn on > and get the same (or similar) functionality. > > Lachezar >