Hello All, We are using Tomcat 6.0.35 for our production system with 64 bit JVM (1.6.33) on Windows 2008 R2 SP1. Our physical memory is 24gb. Load is ~ 100 concurrent sessions. The Tomcat crashed again with OutOfMemoryError: Java heap space error. We are using COTS product SAP Business Objects. Upon providing Tomcat logs , SAP came with recommendation of increasing the heap size . Our current Java params are : -Xms512m -Xmx1024m -XX:MaxPermSize=512m SAP's recommendation is to make it ... -Xms1024m -Xmx4096m We have ample of free memory on the box ... 1a. but the question was heap size as Max 4GB , would it cause application delay when java GC is due? It's NOT time-sensitive application.1b. Also, when putting MAx as 4GB , does it mean JVM will make base effort to get 4GB MAX memory for heap , or is that guaranteed? Based on my reading, it appeared that only Min, was guaranteed.1c. Is it then recommended to have Min and Max as 4GB ... so that Heap doesn't have to resize and 4GB is guaranteed at the time of initialization?1d. I have Tomcat service installer..... I have provided Min and Max heap size values under Tomcat --> Java tab --> Initial Memory Pool and Maximum memory pool ...... I am assuming that means Min and Max values for Heap.....is this correct?
2. When trying to monitor Tomcat , using JConsole and VisualVM ..... do I need to add JMX agent and port .... in Java tab of Tomcat and then restart , or is it possible to Monitor tomcat , without rebooting it ? Since, it would not be possible to re-boot tomcat in production for it. 3. Once JConsole and/or VisualVM is setup ... I can look at Heap/Permgen , memory , threads etc...... I was wondering how do I see memory leaks and what is causing it , using these tools? 4. Also, I am seeing that Tomcat is deploying the webapps on start-up .... is there anyway to avoid Tomcat to deploy the application on start-up....as the applications are already deployed and exploded? Example is below :Apr 5, 2013 7:17:27 PM org.apache.catalina.startup.HostConfig deployWARINFO: Deploying web application archive AnalyticalReporting.warApr 5, 2013 7:17:28 PM org.apache.catalina.core.StandardContext addApplicationListenerINFO: The listener "com.sun.faces.config.ConfigureListener" is already configured for this context. The duplicate definition has been ignored. As you can tell , I am novice to Tomcat. Please let me know if I missed on something. Appreciate all your help.