Perhaps not the right forum to post these results. But just wanted your
opinion on the tests.
S/W versions:
Tomcat 5.5.20
ASyncWeb 0.8.2
JRE 1.5.0._06
Test Methodology:
A multi thread client constructs HTTP/POST messages (headers + content). The
size of each message is ~160KB. The client can be pointed either at Tomcat
or at ASyncWeb server. The number of client threads and iterations per
thread is configurable. Thus a config of thread=10 & iterations=1000 will
result in 10000 HTTP/POST. Keep-Alive functionality is not being tested
hence after each HTTP connection there is a call to disconnect(). A static
counter is incremented after a 200 OK. After all client threads complete
execution a result is printed indicating total time taken for the test,
number of 200 OK received & total connections/sec
The server code, which resides in the Tomcat Servlet and ASyncWeb
stand-alone app is identical in functionality in both places. When a request
is received the Content-Length header is fetched. Data from the InputStream
is read in a while loop and writtern in byte chunks of size 1024 to a byte
array output stream. Once the stream has been read, the size of the byte
array is compared with the content-length and a log is printed if they don't
match. On successful completion a 200 OK is returned.
Test Results:
----------------------------------------------------------------------------------------------------------------
No Threads Iterations Tomcat 5.5.20
ASyncWeb 0.8.2
-----------------------------------------------------------------------------------------------------------------
1 10 1000 Test duration = 138626 millis
Test duration = 901996 millis
Total Connections = 9995
Total Connections = 10000
Connections/Sec = 72
Connections/Sec = 11
2 100 2 Test duration = 2878 millis
Test duration = 20892 millis
Total Connections = 200
Total Connections = 200
Connections/Sec = 69
Connections/Sec = 9
3 500 10 Test duration = 41796 millis
OutOfMemory in Server
Total Connections = 5000
Connections/Sec = 119
-----------------------------------------------------------------------------------------------------------------------------
Now I am wondering if there are tweeks needed to get better number. Should
AsyncWeb not perform better that Tomcat's One-Thread-Per-Connection model?
--
View this message in context:
http://www.nabble.com/ASyncWeb-v-s-Tomcat-5.5.20-Performance-issues-tf4504220s16868.html#a12845779
Sent from the Apache MINA Support Forum mailing list archive at Nabble.com.