You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OpenJDK 17升级后容器因JIT编译器内存过高OOMKilled求助

OpenJDK 17升级后容器OOMKilled问题排查求助

问题背景

近期将Web应用从OpenJDK 8升级至OpenJDK 17后,测试中发现容器因*OOMKilled(状态码137)*被终止,Java日志仅打印"Killed"。排查后确认堆内存利用率始终在1GB以内,GC工作正常,问题出在本地内存消耗上——通过jcmd <PS_ID> VM.native_memory采集数据显示,Compiler内存占用出现异常暴涨。

当前配置信息

JVM参数

-Xms1024m -Xmx1024m -XX:InitiatingHeapOccupancyPercent=40 -XX:MaxDirectMemorySize=256m  -XX:MaxMetaspaceSize=256m -server -Xdebug -Xrunjdwp:server=y,transport=dt_socket,suspend=n -XX:+UseG1GC -Dfile.encoding=UTF-8 -DIGNITE_UPDATE_NOTIFIER=false -Xlog:gc:/var/log/service-gclog.txt  -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/dump -XX:+ExitOnOutOfMemoryError -XX:+FlightRecorder

容器环境与内存详情

容器基于Alpine-3.17.3构建,采用cgroupv2配置。容器内存详情如下:

Continer Memory Details 

Runtime.availableProcessors: 2
OperatingSystemMXBean.getAvailableProcessors: 2
OperatingSystemMXBean.getTotalPhysicalMemorySize: 2684354560
OperatingSystemMXBean.getFreePhysicalMemorySize: 1241612288
OperatingSystemMXBean.getTotalSwapSpaceSize: 0
OperatingSystemMXBean.getFreeSwapSpaceSize: 0

POD初始分配内存为2GB,曾尝试提升至2.5GB,仍触发OOMKilled。

测试场景与内存数据对比

  • 测试场景:通过JMeter创建采购订单,每个订单调用约7个API,服务在创建约50个订单时失败
  • 初始Compiler内存占用:
-                  Compiler (reserved=1013KB, committed=1013KB)
                            (malloc=849KB #1601) 
                            (arena=165KB #5)
  • 容器终止前Compiler内存占用:
-                  Compiler (reserved=678349KB, committed=678349KB)
                            (malloc=1729KB #2690) 
                            (arena=676621KB #13)

可见容器终止前Compiler内存占用已达约678MB。

已尝试的优化参数及效果

已测试以下JVM参数,除禁用内联外均无实质效果:

  • 禁用IncrementalInline:无改善
  • 启用IncrementalInlineForceCleanup:无改善
  • 禁用Inline:有效降低内存消耗,但会影响应用性能,不希望采用该方案
  • 禁用InlineUnsafeOps:可降低部分内存,但新增测试场景(调用订单创建外的其他API)后内存仍会上升并触发OOMKilled
  • 将MaxInlineLevel降至9:无改善
  • 禁用UseInlineCaches:无改善
  • 禁用TieredCompilation:无改善

求助问题

  1. 是否有其他方法可以限制Compiler内存的异常消耗?
  2. 除Compiler内存外,还有哪些方面需要进一步排查?

内容的提问来源于stack exchange,提问作者Viraj C

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 19:43:07