
线上收到告警,有个服务的一个 pod was OOM killed.问题分析从监控系统来看,被 kill 的节点 A 在重启前,堆内存使用随着 YoungGC 规律波动,元空间占用较高,且一直缓慢增长到了 400MB 以上——该应用代码量不大,按理不应该占用这么多。而与它同容器组的另一个节点 B 看起来更不正常,平均响应时间明显长于另外的节点,且在堆内存已经降下来的情况下还多次 FullGC,并且有很多 java.lang.OutOfMemoryError。晚些时候该节点触发了两次 FullGC 次数过多的告警。OutOfMemoryError 异常堆栈:java.lang.OutOfMemo……