JVM调优

JVM调优
原生命令
jvisualvm
jps:查看所有java应用及进程id
jmap
jmap -histo PID: 查看内存信息、实例个数
jmap -heap PID: 查看堆信息(各个分代空间的大小)
jstack
jstack 进程id | grep -A 行数 16进制的线程id
jinfo
jinfo -flags PID: 查看JVM启动参数
jinfo -sysprops PID:查看JVM启动系统参数
jstat
功能:可以查看堆内存各部分的使用量,以及加载类的数量
命令格式:jstat [-命令选项] [vmid] [间隔时间(毫秒)] [查询次数]
jstat -gc PID:评估程序内存使用及GC压力整体情况(最常用)jstat -gc 12345 1000 10:每隔1000毫秒执行,共执行10次
jstat -gccapacity PID:堆内存统计
jstat -gcnew PID:新生代垃圾回收统计
jstat -gcnewcapacity PID:新生代内存统计
jstat -gcold PID:老年代垃圾回收统计
jstat -gcoldcapacity PID:老年代内存统计
jstat -gcmetacapacity PID:元空间数据统计
jstat -gcutil PID:
Arthas
安装
brew https://alibaba.github.io/arthas/arthas-boot.jar
使用
1.运行:java -jar arthas-boot.jar
2.选择程序号,进入对应程序
3.dashboard:查看整个程序运行情况
4.thread:查看线程运行情况
5.thread 线程ID:查看线程堆栈
6.thread -b:查看线程死锁
7.jad 全类名:反编译查看源码
8.ognl:查看或修改系统变量值JVM调优_第1张图片

你可能感兴趣的:(Java,JVM)