First off, there are no ordering guarantees for messages across more than one
destination.

The closest to a workable solution I believe you'll find for needing to
serialize the work from messages across multiple destinations, without some
form of internal queueing in the application, would involve the use of
composite destinations.  That is, to create a consumer of a composite
destination that consists of all the individual destinations for which the
application needs to consume messages.

Keep in mind composite destinations introduce many complexities, so be
careful to test with all the features of ActiveMQ in-use.

Internal queueing might be the best solution to the problem.  If there's an
issue of messages being held-up for long periods, perhaps it would be
possible to set prefetch to 1 and have the processing push the messages onto
the queue and then wait for processing of that message to complete before
acknowledging it back to the broker.

Hope this helps.




--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Activemq-cpp-Synchronous-Receive-from-Multiple-Consumers-tp4702375p4702547.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to