tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tony Anecito <>
Subject Re: IIS7/isapi/tomcat performance
Date Tue, 01 Mar 2011 23:20:39 GMT
There is no code. All I did was create a servlet with a doGet method that had 
nothing in it.

I did notice alot of Tomcat code being called. I have not supplied profiling 
until I get the separate client machine setup. That will be sometime over the 
next few evenings.


----- Original Message ----
From: Christopher Schultz <>
To: Tomcat Users List <>
Sent: Tue, March 1, 2011 2:45:39 PM
Subject: Re: IIS7/isapi/tomcat performance

Hash: SHA1


On 3/1/2011 4:33 PM, Tony Anecito wrote:
> I used Tomcat separately because JBoss was always somewhat behind the current 
> production version of Tomcat. Eventually I will remove JBoss and use JDBC from 

> Tomcat to my database to reduce memory footprint and improve performance. I am 

> only using EJB's in JBoss right now.

You could look at OpenEJB and run your EJBs directly from Tomcat, too.

> Best practice regarding memory settings is set the min.max to be the same so 
> CPU is not busy allocating memory.

No, that's so the memory manager isn't wasting time re-sizing the heap.

> I know each jvm release gets better so less tuning is needed as what
> I think you are trying to say.

Generally, yes.

> I went up to 1,000 client threads before I stopped.

If you have 1000 client threads and (therefore) 1000 server threads all
operating one the same 6-core machine, you are probably pegging the CPU
so badly that you are ruining your own test.

> Since I met my first goal I like to get 10X better on the next one if possible 

> and from what you told me I might be able to make it. I can get close if I went 
> to a i7 980 or Sandy Bridge system instead of the slower AMD processor.

Switching processors is cheating :)

> To me that is cheating since I believe through tuning and code
> changes one should be able to get there.

At some point, work must get done. You can't simply configure-away the
need to allocate memory, copy buffers, parse the request, etc.

There is very little Tomcat configuration that can be done to improve
your observed performance: Tomcat has a great default configuration.
Actually, most of the settings that could affect performance usually
/degrade/ performance if changed from the default. You can also tweak
the GC settings like sizing various pools and stuff, but that won't
change the amount of time it takes to make a single request (or really
even in aggregate, unless you are creating hundreds of thousands of
temporary objects during a single request).

What you really need to do is profile your code and figure out what
/you/ are doing that's taking so long. :)

- -chris
Version: GnuPG v1.4.10 (MingW32)
Comment: Using GnuPG with Mozilla -


To unsubscribe, e-mail:
For additional commands, e-mail:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message