通过jdk自带的jconsole.exe监控java程序的性能
在jdk安装目录下如:C:\jdk1.5.0_08\bin有个名为“jconsole.exe”的应用程序,通过它可以检测到java程序当前的运行情况。jconsole控制台界面如下图所示:
那么如和配置呢?我们只要打开tomcat,在java标签下添加如下内容:
-Dcom.sun.management.jmxremote.port="1090"
-Dcom.sun.management.jmxremote.authenticate="false"
-Dcom.sun.management.jmxremote.ssl="false"
如图:
配置完成后,打开jconsole.exe,输入端口号就可以打开监控控制台。Java程序在运行过程中会出现内存溢出错误,但是目前好象关于这个问题好象都没有特别指到点子上的说法,很多时候都去调内存大小。当然我也是这么做的,比较幸运的是解决了问题。具体做法是在tomcat安装目录下的“catalina.bat”文件中进行一定的修改:
rem ----- Execute The Requested Command
echo Using CATALINA_BASE: %CATALINA_BASE%
echo Using CATALINA_HOME: %CATALINA_HOME%
echo Using CATALINA_TMPDIR: %CATALINA_TMPDIR%
echo Using JAVA_HOME: %JAVA_HOME%
这一栏改为
rem ----- Execute The Requested Command
set JAVA_OPTS='-server -Xms512m -Xmx800m -XX:PermSize=128M -XX:MaxPermSize=512m -XX:NewSize=128m -XX:MaxNewSize=256m -XX:SurvivorRatio=8'
echo Using CATALINA_BASE: %CATALINA_BASE%
echo Using CATALINA_HOME: %CATALINA_HOME%
echo Using CATALINA_TMPDIR: %CATALINA_TMPDIR%
echo Using JAVA_HOME: %JAVA_HOME%