常用工具简单介绍
Jmap
此命令可以用来查看内存信息,实例个数以及占用内存大小
常用指令
jmap -dump:format=b,file=eureka.hprof 14660
Jstack
用jstack加进程id查找死锁
还可以用jvisualvm自动检测死锁
线上cup高查找办法
[root@luce247 rfro]# printf “%xn” 16415
401fn
[root@luce247 rfro]# jstack PID | grep 401fn -A 30
Jinfo
查看正在运行的Java应用程序的扩展参数
查看jvm的参数
Jstat
jstat命令可以查看堆内存各部分的使用量,以及加载类的数量。命令的格式如下:
jstat [-命令选项] [vmid] [间隔时间(毫秒)] [查询次数]
注意:使用的jdk版本是jdk8
JVM运行情况预估
用 jstat gc -pid 命令可以计算出如下一些关键数据,有了这些数据就可以采用之前介绍过的优化思路,先给自己的系统设置一些初始性的JVM参数,比如堆内存大小,年轻代大小,Eden和Survivor的比例,老年代的大小,大对象的阈值,大龄对象进入老年代的阈值等。
年轻代对象增长的速率