Hi,

We need to implement a parallelising system using messaging - work is handled 
by message beans.

The upstream and message processing works fine - we've run cluster performance 
tests on 200000 messages and scalability is fine (and linear across 3 systems 
in a cluster).

The problem is to determine the best way of knowing when all the messages have 
been processed.

Initial attempts resulted in the thread 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4138673#4138673 which 
wasn't much use.

I am loathe to use a semaphore approach - we know the number of messages before 
we start, so each message could decrement this - as this would introduce 
contention on the semaphore (however implemented I think).

There doesn't appear to be a way of querying the queue.

We can't stick a 'final' message onto the queue as this could be processed 
before all the others have been processed (each message can take a while).

I have some other ideas, but they're all a bit twiddly : entry in DB for each 
completion ... count entries)

Just wondering if anyone has had the same problem - and what suggestions there 
are for solving it?

Many Thanks

tim

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4138731#4138731

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4138731
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to