Out of Memory(OOM)是Linux内核在系统内存严重不足时,强行释放进程内存的一种机制。出现大量的Out of Memory信息可能是因为系统内存资源不足,系统无法为程序或者进程分配足够的内存空间,从而导致程序无法正常运行或者进程无法读写数据。本文主要介绍当您的Linux实例存在OOM问题的处理方法。
解决方案
请参考以下步骤进行排查:
请参考以下信息,尝试分析发生OOM的根本原因。
要获取的信息
说明
OOM发生的时间和频率
通过Linux系统日志或业务应用日志查看OOM发生的时间和频率。
通过Linux系统日志查看。
cat /var/log/message
您的业务应用日志。
系统负载情况
推荐使用云监控查询您的ECS实例负载信息。
负载查询工具
如果您没有使用云监控产品,您可以通过
free
、top
或sar
命令查看负载信息。更多信息,请参见Linux实例负载高问题排查和异常处理。
您的业务负载情况
根据OOM发生的时间,并结合您的业务负载情况检查您的业务应用日志中触发OOM的原因。
OOM发生时的应用日志
根据OOM原因进行处理。
如果当前Linux实例是因为内存不足触发OOM,您可以升级实例内存配置。
说明注意:升级配置需要重启实例,请在合适的时间段升级内存配置。
您的业务程序存在缺陷,您可以根据业务应用日志中出现的问题优化您的业务代码。
继续观察,确认OOM问题不再出现。
文档内容是否对您有帮助?