1.通过arthas查看jvm 查看内存情况,也可以使用其查看线程使用 或者死锁
2.如果想查看内存对象的使用情况 使用jmap -histo:live 1570 > 1.txt
3.Jmap [ 代表数组
instance 是对象的实例个数
bytes 是总占用的字节数
class name 对应的就是 Class 文件里的 class 的标识
B 代表 byte
C 代表 char
D 代表 double
F 代表 float
I 代表 int
J 代表 long
Z 代表 boolean
前边有 [ 代表数组, [I 就相当于 int[]
对象的数组用 [L+ 类名表示
查看java 内部cpu飙升
top -H -p 91782查看进程里的线程情况:占用内存和cpu
得到线程的十进制pid,转化成16进制
jstack -l 91782 > 91782.log导出线程栈信息(命令中是进程ID),根据上面的16进制获取对应的线程是啥
jstat -gc(-gcutil) 19542 5000 5秒采样一次gc情况