How many cpus do you have?
5 messages in 60 seconds sounds like you doing something
very intensive in your MDB.
I'm suprised you don't see 3 x 60 = 180 seconds.
I'm not sure what is a cups. But for each message I have intensive process which takes between 20-60 sec to complete, therefore sending 5 messages from one client and completing in 60 sec sounds reasonable(I mean getting a response back for all 5 in 60 sec).
However when I add two more clients each sending 5 messages, it takes about 150 - 160 sec per client to complete. It seems that when mdb processes more messages (15 vs 5) there's a linear degradation in performance.
sorry i read you message too fast. I'm running it on one cpu 1.8 GHz machine.
You can reduce the MDB pool size. Linear degredation is the right and expected sort of behavior, as your CPU machine is doing the same amount of work. It takes longer to process one message as there are now more messages being processed simulatenously.
Edit standardjboss.xml, the section:
POOL SIZE HERE
Thanks for your suggestion. I've tried using 1 as my maxsize and that slowed it even further since only one message at a time was processed. Overrall it took about 200-240 sec per client. What is 'MaxMessages' for ?
I also tried increasing the maxsize and maxmessage both to 100. That also didn't improve performance. I'm surprised that it's so easy to achive performance degradation with only 5 vs 15 messages. And I do need them to be processes simulatenously.
You only have so much CPU.
If your machine is pegged at 100% cpu running more threads
won't help (there is no CPU left)