生产稳定:JVM调优- java进程,JVM频繁GC,导致CPU占用、内存占用过高过高定位和排查

  1. java进程,JVM频繁GC,导致CPU占用、内存占用过高过高定位和排查
1、查到耗CPU的线程id,top命令找出最高占用的进程(command为java)
    top -H
    ps -mp pid -o THREAD,tid,time
2、使用命令将线程id(tid)转换为十六进制
    printf "%x\n" tid
3、通过进程id和线程id查看线程栈内存
    jstack pid |grep tid -A 30
4、通过进程id导出堆内存(dump信息)
    jmap -dump:format=b,file=name.dump  pid
5、name.dump文件下载到本地,通过jprofile等工具导入分析

jprofile导入name.dump文件后截图如下:
生产稳定:JVM调优- java进程,JVM频繁GC,导致CPU占用、内存占用过高过高定位和排查_第1张图片
生产稳定:JVM调优- java进程,JVM频繁GC,导致CPU占用、内存占用过高过高定位和排查_第2张图片

传送门:
JVM-MySQL-Tomcat-服务调用,调优相关
生产稳定:JVM-MySQL-Tomcat-服务调用,调优相关
学习提高:Idea 使用docker 部署SpringBoot应用并指定JVM参数,jdk8版本

-------------欢迎各位留言交流,如有不正确的地方,请予以指正。【Q:981233589】

你可能感兴趣的:(Java常见面试题,性能优化,运维监控,后端,JVM优化,jvm.gc)