Hi people,

here are results for the messaging benchmarks, for BEA and JBoss.
First, a little description of the scenario.

----------------------------------------------------------------------------
We decided for this simple scenario to benchmark :

PostingClient posts to Topic1.
MDB1 (a message driven EJB) is listening on topic1, gets the message, puts
its time of receipt in the message, and sends it to topic2.
MDB2 (a message driven EJB) is listening on topic2, gets the message, puts
its time of receipt in the message, and sends it to topic3.
MDB3 (a message driven EJB) is listening on topic2, gets the message, puts
its time of receipt in the message, and sends it to topic4.
MDB4 (a message driven EJB) is listening on topic2, gets the message, puts
its time of receipt in the message, and sends it to topic1.
and when the message is posted to topic1, MDB1 regets the message.
There is another listener on topic1 --> MonitoringClient.
MonitoringClient gets the messages arriving there, and reports the times the
message took between the 4 MDBs.

Summary : the messages sent into the EJB Server remain in there, and make
loops from MDB1 to MDB4 and back again, endlessly.

Hardware : Pentium II, 400 Mhz, 256 Megs of RAM.
OS : Windows NT4
VM : Sun 1.3

----------------------------------------------------------------------------
-----------------------------------------------
Benchmark Testing Series :


Weblogic Benchmarks:
VM : 64MB heapsize.
Configurations :
1) max-beans-in-free-pool : 50        initial-beans-in-free-pool : 6 (in the
entries in weblogic-ejb-jar.xml, for each of the 4 message beans)
2) max-beans-in-free-pool : 500        initial-beans-in-free-pool : 62
3) max-beans-in-free-pool : 2000      initial-beans-in-free-pool : 250

for each configuration we tested (with 1 KB messagesize):
50 msgs, 500 msgs, 5000msgs, and infinite (until server crash - maximum time
waiting for crash 30 minutess)

On JBoss :
VM: 64MB heapsize.
Configurations:
(in jboss.xml)
1) container-invoker : maximumsize 50,maxmessages 1 - container-pool:
maximumsize 50 minimumsize 6
2) container-invoker : maximumsize 500,maxmessages 1 - container-pool:
maximumsize 500 minimumsize 62
3) the maximum jboss could handle even with 128mb ram for the heapsize of
the VM was :
container-invoker : maximumsize 500,maxmessages 1 - container-pool:
maximumsize 500 minimumsize 100

for each configuration we tested (with 1 KB messagesize):
50 msgs, 500 msgs, 5000msgs, and infinite (until server crash - maximum time
waiting for crash 30 minutes)
----------------------------------------------------------------------------
-------------------------------------------------

Results for Weblogic :
this server is very fast and stable. With 5000 Messages, we had a crash at
configuration 1, at 1800 Messages sent.
With configuration 2, it crashed at 3300, and with configuration 3 we had a
crash as early as with 500 messages - but that was due to the low heapsize
of the VM.
When we raised the heapsize to 128Megs, the server ran good with 10000
messages.
Sending times : we mesaured the times needed for a message to be sent
between to consecutive MDBs - for weblogic it was all around 0,1 secs.
At 10000 messages, average sending time was 1,4 seconds.
For 5000 messages, even with config 3, we had 0,8 seconds.
All other results were very acceptable, average times of 0.01 to 0.2.

If you need any more details, contact me.

JBoss :

config 3,2 : 3 seconds average with 50 messages.

Well, to be very honest : perhaps I m doing something fundamentally wrong,
and I dont know exactly what strategy JBoss is pursuing in its kind of
message delivery, but JBoss crashed at every config with 500 messages.

Average sending times at 50 messages were 3 seconds, regardless of the
configuration used, the parameters showed little or no effect.

I know that these parameters should tune throughput, I know, and I know that
with 4 topics and 4 MDBs, we are not simulating a true asynchrnously
designed application, meaning : with asynchronous components only.

But regardless of the throughput, no one wants to wait 12 seconds for a
response.
Even with 30 messages in the system, the average was 2 seconds, meaning 8
seconds in total to wait for a response : and this with only 4 asynchronous
components.
At 10 messages, we got average times of 0,7 seconds - meaning a response
time of 3 seconds in total, which could be acceptable.

It is also strange that weblogic showed significant CPU usage when
increasing the JMS load, while JBoss stayed very happy with around 10%, not
caring about any optimization in speed, it seems.

Have we forgotten any parameters to SPEED up sending times, message
delivery, or MDB invocation for JBoss ?

I am really wondering.

For precise details, contact me.

Best regards, Jubin Zawar






_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to