我正在使用Tomcat 6运行Web应用程序。我们使用open JDK 6。我们的服务器是AMD 64位Ubuntu 11.04。
通过以下命令进行内存转储
jmap -dump:format=b,file=/home/demon/Desktop/mymemorydump.hprof 2762
内存转储大小为4.5 GB。我们使用eclipse MAT进行分析时,强可达对象为80 MB,不可达对象为335 MB...如何分析剩下的内容...
此进程在我的服务器上占用的内存为4.5 GB。现在这个内存永远不会降到正常水平的1 GB。这个内存缓慢地增加到8-9 GB,然后我们的tomcat停止响应(实际上没有内存不足错误)。
我的tomcat配置是
/usr/lib/jvm/java-6-openjdk/bin/java -Djava.util.logging.config.file=/var/lib/tomcat6/conf/logging.properties -Djava.awt.headless=true -Xms1024m -Xmx6144m -XX:+UseConcMarkSweepGC -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/share/tomcat6/endorsed -classpath /usr/share/tomcat6/bin/bootstrap.jar -Dcatalina.base=/var/lib/tomcat6 -Dcatalina.home=/usr/share/tomcat6 -Djava.io.tmpdir=/tmp/tomcat6-tmp org.apache.catalina.startup.Bootstrap start