Java, Massive message processing with queue manager (trading)

Posted by Ronny on Stack Overflow See other posts from Stack Overflow or by Ronny
Published on 2009-11-23T14:39:28Z Indexed on 2010/05/02 22:57 UTC
Read the original article Hit count: 230

Hello,

I would like to design a simple application (without j2ee and jms) that can process massive amount of messages (like in trading systems)

I have created a service that can receive messages and place them in a queue to so that the system won't stuck when overloaded.

Then I created a service (QueueService) that wraps the queue and has a pop method that pops out a message from the queue and if there is no messages returns null, this method is marked as "synchronized" for the next step.

I have created a class that knows how process the message (MessageHandler) and another class that can "listen" for messages in a new thread (MessageListener). The thread has a "while(true)" and all the time tries to pop a message.

If a message was returned, the thread calls the MessageHandler class and when it's done, he will ask for another message.

Now, I have configured the application to open 10 MessageListener to allow multi message processing.

I have now 10 threads that all time are in a loop.

Is that a good design??

Can anyone reference me to some books or sites how to handle such scenario??

Thanks, Ronny

© Stack Overflow or respective owner

Related posts about java

Related posts about multithreading