jvm oom排查记录剖析

 更新时间:2023年08月17日 09:09:51   作者:outwar  
这篇文章主要为大家介绍了jvm oom排查记录剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

命令

命令作用
jmap -dump:live,format=b,file=java.hprof {pid}dump内存
jhat -refs true dump.hprof分析
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp/heapdump.hprofoomdump
jstat -gc {pid}内存和gc
jmap -histo:live {pid}摘要

jProfile

使用jProfile对大对象进行分析, 查看其引用链路

static class Cache {
    private final ClientFinalizer clientFinalizer = new ClientFinalizer();
    // 就是这个map
    private final Map<Key, FileSystem> map = new HashMap<Key, FileSystem>();
    private final Set<Key> toAutoClose = new HashSet<Key>();
}

最大的对象是FileSystem的缓存, 分析代码可知使用完FileSystem后没有调用close, 导致没有被回收.

第二个大对象定位为org.apache.logging.log4j.core.layout.StringBuilderEncoder#threadLocal, 该项目中由于需要根据业务id路由日志文件, 查看log4j RoutingAppender文档发现其需要配置清理回收策略IdlePurgePolicy.

<IdlePurgePolicy timeToLive="15" timeUnit="minutes"/>

以上就是jvm oom排查记录的详细内容,更多关于jvm oom排查的资料请关注脚本之家其它相关文章!

相关文章

  • Java实现仿淘宝滑动验证码研究代码详解

    Java实现仿淘宝滑动验证码研究代码详解

    这篇文章主要介绍了Java实现仿淘宝滑动验证码研究代码详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • 在IDEA中配置Maven镜像的最新方法

    在IDEA中配置Maven镜像的最新方法

    这篇文章主要给大家介绍了关于在IDEA中配置Maven镜像的最新方法,Maven是一个流行的Java项目构建工具,它依赖于互联网上的Mave中央仓库来下载和管理项目依赖库,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • SpringBoot中的@ControllerAdvice使用方法详细解析

    SpringBoot中的@ControllerAdvice使用方法详细解析

    这篇文章主要介绍了SpringBoot中的@ControllerAdvice使用方法详细解析, 加了@ControllerAdvice的类为那些声明了@ExceptionHandler、@InitBinder或@ModelAttribute注解修饰的 方法的类而提供的专业化的@Component,以供多个 Controller类所共享,需要的朋友可以参考下
    2024-01-01
  • Java concurrency之互斥锁_动力节点Java学院整理

    Java concurrency之互斥锁_动力节点Java学院整理

    本文通过示例代码给大家介绍了Java concurrency之互斥锁的相关知识,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-06-06
  • Java SPI的简单小实例

    Java SPI的简单小实例

    这篇文章主要介绍了Java SPI的简单小实例,文中讲解非常细致,代码帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-07-07
  • springmvc分层领域模型概念详解

    springmvc分层领域模型概念详解

    本文核心为分层领域模型(VO , PO , BO, DAO ,POJO等)概念的个人理解,结合springmvc浅谈分层领域模型的相关知识,感兴趣的朋友跟随小编一起看看吧
    2021-08-08
  • Java实现简单QQ聊天工具

    Java实现简单QQ聊天工具

    这篇文章主要为大家详细介绍了Java实现简单QQ聊天工具,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-09-09
  • Java处理延时任务的常用几种解决方案

    Java处理延时任务的常用几种解决方案

    本文主要介绍了Java处理延时任务的常用几种解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • SpringSecurity登录使用JSON格式数据的方法

    SpringSecurity登录使用JSON格式数据的方法

    这篇文章主要介绍了SpringSecurity登录使用JSON格式数据的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-02-02
  • InputStreamReader 和FileReader的区别及InputStream和Reader的区别

    InputStreamReader 和FileReader的区别及InputStream和Reader的区别

    这篇文章主要介绍了InputStreamReader 和FileReader的区别及InputStream和Reader的区别的相关资料,需要的朋友可以参考下
    2015-12-12

最新评论