tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eitan Yarden <>
Subject Tomcat async servlet performance
Date Tue, 10 Sep 2013 17:42:01 GMT
I've been experimenting with Tomcat 7's async servlet support and comparing
it to synchronous (plain) servlets on an EC2 m1.medium instance. I've
configured Tomcat to use the APR connector, and the service does some
(dummy) work for 80ms and returns an html response. I'm using Tomcat 7.0.42.

When the thread-pool size restriction has been removed, the synchronous
servlet spawned about 1000 threads and was able to handle up to about 2700
requests/sec while still maintaining reasonable latency. The asynchronous
servlet handled up to about 4500 requests/sec (I've used my own thread-pool
for the async processing rather than the container's
AsyncContext.start(Runnable) method).

While certainly significant (66% increase in request rate), I had expected
an even bigger difference between the async and sync servlets' performance.
Has other people's experience been the same? Are there any major Tomcat
configuration options that should be used when running async servlets?

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message