当前位置: 首页 > news >正文

一种排查java.lang.OutOfMemoryError: Metaspace的方法

有现场反应k8s中的java应用出现java.lang.OutOfMemoryError: Metaspace,但是没有提供hprof转储文件,所以本地排查该问题。
Metaspace区域的内存溢出错误,通常意味着 JVM 中加载的类元数据超出了限制。
jstat -class 1000命令可以每隔一秒打印一次虚拟机装载了的类的个数,例如:
image

然后arthas的classloader命令可以查看每个类加载器加载的类的个数,例如:
image
根据现场反馈,某计算任务进行一段时间后会出现该错误,所以本地也进行同样操作争取复现。
jstat -class 1000 观察到类个数增加后,执行arthas的classloader命令,对比哪个类加载器的个数或加载的类个数增加了,从而缩小排查范围。
在我的例子中是org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader的numberOfInstances和loadedCountTotal都有明显增加,可以知道问题和drools规则引擎有关。
经过排查代码得知是有同事把KieBase对象缓存到redis中,每次从redis取出反序列化时都会增加类,占用metaspace空间,从而引起OOM。

http://www.jsqmd.com/news/10673/

相关文章:

  • MDX Blog Post
  • Long Blog Post
  • First Blog Post
  • 本站点即将在2025年改变研究方向和目标
  • 详细介绍:内置高压MOS的智能调光方案:AP5126 LED降压恒流驱动芯片
  • 实用指南:12_OkHttp初体验
  • 深入解析:llm的ReAct
  • (AE)Adobe After Effects 2025 视频后期制作软件!安装包永久免费免激H解锁版下载与图文详细安装教程!!
  • Postgresql主从配置
  • wmctf2025
  • 【LVS入门宝典】LVS-TUN模式原理与配备:跨越网络界限的负载均衡解决方案
  • Java基础-Eclipse工具-面向对象(1)
  • Avalonia UI 投资 Wilderness Labs
  • BLE开发新体验:四种模式全解析,源码免费开放
  • JBoltAI V4 - 那年-冬季
  • 【EI检索】2025年智能决策与机器学习国际学术会议 (ICIDML 2025)
  • 10月9号
  • Qwen3技术报告
  • 赋能智慧监管:国标GB28181平台EasyGBS在明厨亮灶场景中的深度应用
  • CFD与FDM, FEM, FVM的关系?
  • 央国企高管团队为何频繁流失?揭示薪酬结构失衡的深层原因与优化策略
  • LTV-817X-C晶体管输出光电耦合器 Liteon光宝 电子元器件深度解析 - 详解
  • Redis sentinal模式,master挂了的 选举过程
  • 破解安防整合难题:详解国标GB28181EasyGBS如何实现零插件Web直播
  • 软件技术基础第一次
  • Vue ref 企业级实用教程:carouselRef 详解
  • 鉴冰AI FENCE:企业级LLM应用安全防护网关2025技术解析与实战
  • leetCod热题100-73、买股票的最佳时期
  • 有限体积法和有限差分法、有限元法的区别。
  • 用户行为素材可视化