docker容器管理,OOM,内存溢出,dump文件堆栈信息分析

docker容器管理,OOM,内存溢出,dump文件堆栈信息分析

一、dump文件(.hprof)日志生成方式

1.方式一: order.jar 包运行时候加参数,当服务OOM的时候会自动导出dump文件

-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=目录
  1. 方式二: 根据进程PID,手动导出进程文件
jmap -dump:live,format=b,file=m.hprof PID //在docker容器内执行

执行图示

注意:因为docker容器管理导出的文件在容器中,需要保重容易与宿主机之间挂载有目录挂载,实现宿主机与容器之间实心文件共享docke容器与宿主机之间目录挂载

二、OOM时,dump文件分析

  1. 把文件从服务器上下载

在这里插入图片描述

  1. 使用dump文件分析工具MAT

  2. 下载MAT
    在这里插入图片描述

  3. 看下要分析的.hprof文件的大小,修改mat/MemoryAnalyzer.ini中 -Xmx1024m的大小,爆保证修改之后的大小大于要分析的文件大小

  4. 点击MemoryAnalyzer.exe,出现工具界面

  5. 点击file/Open Heap Dump…,打开下载到本地的.hprof文件
    在这里插入图片描述

  6. 打开之后,点击finish,分析过程比较慢需要一段时间。

在这里插入图片描述
8. 点击Leak suspects

9. 查看第一个占用内存大的问题的堆栈信息
在这里插入图片描述
10. 具体的堆栈信息,此信息跟idea和eclipse的控制台报错信息一致,可自己分析代码问题
在这里插入图片描述

  1. 也可以看问题详情
    在这里插入图片描述
    12,具体信息
    在这里插入图片描述
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值