OutOfMemoryError异常OOM排查

参考

【JVM】八、OOM异常的模拟
MAT工具分析Dump文件(大对象定位)
用arthas排查java服务内存占用过高 arthas堆外内存分析
Java内存溢出OOM之dump分析
java项目线上出现OOM问题定位看这篇文章就够了

工具

MAT(Memory Analyzer)

下载https://eclipse.dev/mat/downloads.php

注意大部分需要jdk17以上,MemoryAnalyzer-1.10.0.20200225-linux.gtk.x86_64可适配jdk1.8 ,

OutOfMemoryError 是 Java 虚拟机(JVM)抛出的一种错误,表示程序在尝试分配对象时无法获得足够的内存。这通常是由于应用程序内存泄漏、内存溢出或者程序需要的内存超过了 JVM 的限制所引起的。

一、产生原因

内存泄漏: 未被使用的对象或者引用未被正确释放,导致堆积的对象占用了大量内存。

无限循环或递归: 程序中存在无限循环或递归调用,导致堆栈空间不断增长。

内存资源耗尽: 应用程序需要的内存资源超过了 JVM 配置的最大堆大小。

原文链接:https://blog.csdn.net/TreeShu321/article/details/135255821

二、测试

堆溢出 java.lang.OutOfMemoryError: Java heap space

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值