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.

Reply via email to