I am looking build an event based system where the event is logged in a
message queue and then listeners(subscribers/receivers) all perform their
specific tasks based on the event.  I've looked at the documentation and I
can't seem to find exactly what I want to do.

I would like to:
 - strictly order the subscribers
 - ensure that all subscribers have acknowledged the message before
dequeuing
 - message dropping is not allowed

So for instance, say I have general user registration for some application. 
I would like to have 3 subscribers:
1. register the user, 
2. check that the user's location exists, 
3. registers the user for services in their location.  

The ordering is important because 2 is dependent on 1 and 3 is dependent on
2, so we need to make sure 1 has executed before executing 2 and so on.

Why not do it in a service?  I'd rather not because if one part of the chain
fails, the registration fails.  I do not want to lose registrations because
the location lookup fails.  Also, registration and location lookup are
completely separate, there is no reason, theoretically, that a registration
knows it needs a valid address, much less that it should fail because of it.

I was thinking a virtual topic is what I want to do, but I was wondering if
you guys had another suggestion.  I am fairly new to ActiveMQ so I don't
know if I'm missing a feature that will do what I want without a lot of
programming.
-- 
View this message in context: 
http://www.nabble.com/Suggested-implmentation--tf3507631s2354.html#a9796923
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to