jvisualvm监控工具使用,内存占用高排查,
程序员文章站
2022-06-20 16:18:30
...
1.启动程序添加如下命令:
java \
-Djava.rmi.server.hostname=192.168.103.125 \
-Dcom.sun.management.jmxremote.port=6080\
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \
-jar xxx*.war
2.启动jdk/bin下的jvisualvm.exe监控程序
3.添加远程节点
4.添加JMX连接
内存占用高,排查方法:
1.创建heap dump:jcmd {pid} GC.heap_dump filename
2.使用IBM的heapAnalyzer工具,打开创建的heap dump文件
打印所的有线程堆栈,如果java程序发生死锁,这个可以打印出是哪几行代码在抢锁。
jcmd {process id} Thread.print
登录mysql,执行如下命令,即开启死锁日志的打印,所有的死锁日志都会打印在error log中。
set global innodb_print_all_deadlocks=on