jvm线上异常排查流程
1. Linux命令 jps 找出当前运行实例
2. jinfo -flags pid(java运行id) 打印出当前设置的jvm内存参数情况
3.jstat -gcutil pid 1000 10 每秒打印一次当前jvm的gc运行情况,一共打印10次
4.将gc日志下载进行分析:到底是因为什么原因导致一直gc或者gc时间久
比如:1.当元空间的大小设置达到 MetaspaceSize 阈值时,就会触发 Metadata GC Threshold GC
2.young空间太小,创建的对象太多
5.用 jmap 导出 jvm 内存 dump 文件导入 MAT 工具分析下
6.然后用 Arthas 的 classloader -a 命令直接导出元空间内加载的所有类,看看到底程序都加载了哪些类。