容器oom
原因
当容器设置 memory limit 过小时,并且容器进程需要的memory大于 容器limit内存时,会报出容器oom,即进程可申请的内存小于系统分配给该进程的内存时oom
结果
linux内核会kill掉该进程,即容器会因为oom重启
解决方案
调大memory limit或限制进程使用内存大小
java.lang.OutOfMemoryError: Java heap space
原因
在启动java程序时,可设置堆内存大小xmx,如果该值设置的过小,导致jvm gc回收空间过小,并且堆无空间分配新的对象,即会报出java.lang.OutOfMemoryError: Java heap space
解决方案
- 方案1:调大堆内存大小
- 方案2:如果堆内存配置的正常或调大堆内存仍未解决问题,说明程序中存在内存池漏,可通过jmap等命令具体判断程序问题所在