- 引子
当JAVA应用程序出现OOM(内存溢出)的时候可以使用JMX及JDK自带的工具监测JVM运行情况。
- 添加JVM启动参数
10.25.14.31—需要修改为被监控且运行JVM的服务器IP地址
3999—需要修改为服务器空闲的端口
追加以下参数
-Xms512m -Xmx1024m -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=10.25.14.31 -Dcom.sun.management.jmxremote.port=3999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dorg.bytedeco.javacpp.maxbytes=0G -Dorg.bytedeco.javacpp.maxPhysicalBytes=0G -Xloggc:./gc.log -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/
-
配置JMX监控工具
在JDK的安装目录中查找以下文件,双击后运行。
远程->右键->添加远程主机
添加好的主机->右键->添加JMX连接
由于JVM启动参数禁用了SSL验证,所以只需要输入IP:PORT即可。
-
查看JVM运行情况
双击JMX连接



