Try using jconsole.exe (it is part of the Sun JDK) to review memory and thread usage of your JVM. That should help you narrow down where the issue is. One key thing to look at with Jconsole is the heap memory used figure. You are setting your -Xmx, but how much of it are you actually using? Heap memory used will tell you if you have a memory constraint or not. Also look at how often you have garbage collections. You'll have more of them if you have a memory constraint. One more thing, be sure your min and max memory configurations are the same. It's more efficient that way.
On 32-bit Windows, you should be able to use 1536MB as your -Xmx size. That is what we are able to use, at least using JDK 1.6.x. Upgrading to 64-bit Windows and a 64-bit JVM (and 64-bit Tomcat) will allow you to use as much RAM as you have available. We have a 64-bit Windows system with 18 GB of RAM allocated to Tomcat/Java. Good luck, Brian ________________________________ From: nodje <nodje...@gmail.com> To: users@tomcat.apache.org Sent: Monday, December 29, 2008 2:57:14 AM Subject: Optimizing Tomcat with Http11NioProtocol? Hi, we are still using 5.5.12 in production and our users are facing increasing delays with their requests (like way too long by now already). While we are not entirely sure about what's causing this (database vs Java application), we suppose it comes from the Java application (the database server never seems to be under stress). The CPU of the Tomcat machine doesn't seem too busy either. Providing it comes from the Java application side (by the way, any tips on how to precisely identify that is more than welcome), and providing that the problems come from too many requests, would Http11NioProtocol help Tomcat speed up the execution? It seems worth trying Http11NioProtocol before going for clustering+load balancing. Any advice on the matter? Also we think that request that cannot b served in the reasonable time should be refused. Taking into account the described behaviour with the default maxThreads=150 and acceptCount =100 values, shouldn't we decrease the acceptCount? Moreover the CPU on the Tomcat machine doesn't seem too busy. Is it a sign that we can increase maxThreads? Tomcat is on a Windows 32bits machine, so even though the machine has 4Gb of RAM, the MAX -Xmx size that we can be used seems to be around 1200Mb. Would a 64bits OS automatically allows for more memory usage? A lot of questions I know, but facing big problems like we are now, we want to try anything possible to quickly relieve the pain from using the application! thanks to anyone providing advice -nodje -- View this message in context: http://www.nabble.com/Optimizing-Tomcat-with-Http11NioProtocol--tp21200419p21200419.html Sent from the Tomcat - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org