在近期的开发中出现过:

因算法进程占用最高的内存而在系统发生oom时被kill,通过排查,发现主要原因不在于应用程序,虽然应用有些迹象出现内存泄露,但泄露很小或因系统内存回收延时,真正的原因出现于系统的交换分区的配置上:

系统情况:nx板子,4~6核,8G内存,ssd,128G,ubuntu系统

应用情况:rabbitmq,python、qt做的界面系统,算法

外设情况:连接布控球(摄像头)

网络情况:ap-wifi,eth0预留,eth1连接布控球

内存情况:物理内存:8G , swap分区:4个zram[0-4] 3.8G*4 = 15.2G 总内存约23G

使用内存情况:主要是算法需要12G以上的内存,所以需要用上ssd的空间做交换分区,用zram?zswap?zswap?

出现问题的情况:当算法运行到8G+5G(swap)时,系统就out of memory,触发了oom-kill

分析及解决方案:

1、使用zram在这个需求上是错误的,zram可以理解为通过占用一定的内存进行压缩(lzo,lz4压缩,压缩率应该是3:1),变相增加内存的量,优点,速度快,比硬盘的swap应该是快多了,所以不管zram设定多大,在这个8G的设备上,最大的内存量=8G~16G,23G的总内存应该是假,才会当算法跑到8+5G时出问题了,当测试程序跑到8+7G也出问题了。

2、解决方案,此场景下可能用zswap+swap是最合适的,比swap快。

由于系统方案已定,不能修正,所以临时以下给出swap的方案,用硬盘文件做16Gswap:

swaps="/tmp/swaps"
sw_mem=$((16*1024*1024*1024))
if [ ! -f $swaps ]; thensudo swapoff -asudo fallocate -l $sw_mem $swapssudo chmod 600 $swapssudo mkswap $swapssudo swapon -p 10 $swaps
fi
exit 0

记一次oom_kill的排查相关推荐

  1. golang 记一次data race排查过程

    golang 记一次data race排查过程 背景 data race 现场 解决思路 经验总结 data race在写并发代码时候经常遇到,相关基础概念的介绍可以参考之前一篇文章:golang d ...

  2. 坑爹坑娘坑祖宗的87端口(记一次tomcat故障排查)

    参考:http://www.cnblogs.com/liuxianan/p/err_unsafe_port.html?ref=myread 问题来源 因为经常有各种各样的大小项目要跑,全部放一个tom ...

  3. 记一次MongoDB故障排查的过程

    数据技术嘉年华等你来 预告:11.16-17日,北京市东三环中路61号富力万丽酒店,相聚数据技术嘉年华,(99元票务)免费购票倒计时,点击查看大会详情. 张甦老师带来主题"双剑合璧带你走进M ...

  4. 信息系统故障分析案例---------记一次性能检测系统故障排查

    2018年10月10日凌晨2点接到信调值班员电话,单位信息运维统一监管(I6XXX)系统报警显示公司门户和网站系统性能检测报警,页面访问响应时长和模拟登录功能异常,实际情况是网站和门户系统运行正常,稍 ...

  5. 记一次Kafka warning排查过程

    1.前因 在配合测试某个需求的时候,正好看到控制台打印了个报错,如下: 2023-03-06 17:05:58,565[325651ms][pool-28-thread-1][org.apache.k ...

  6. 记一次网站故障排查过程(nginx 504状态码、 upstream timed out (110: Connection timed out)以及jbd2引起IO高

    一.问题描述 客户侧反馈无法正常访问系统,页面转圈,时好时坏,访问不稳定. 二.系统环境: 机器环境:UOS . nginx .php(对接其他服务器kingbase .钉钉.redis .KF) E ...

  7. 【磁盘空间100%】记一次生产问题排查

    1.收到告警,/apps目录下磁盘空间使用率高于99% 2.登陆服务器,使用df -h查看各目录挂载点以及磁盘空间使用率 3.确认apps下使用率确实超过99%,逐步排查 4.查看apps下各目录所占 ...

  8. 记一次OOM问题排查过程

    上周运维反馈线上程序出现了OOM,程序日志中的输出为 Exception in thread "http-nio-8080-exec-1027" java.lang.OutOfMe ...

  9. 记一次SOFA内存泄漏排查过程

    记一次内存泄漏排查过程 起因 某天中午大家还在安静的午休,睡得正香的时候突然被一阵手机滴-滴滴直响短信惊醒.一看是应用的服务器告警并且对应服务的所有机器都在告警"健康检查失败,自动拉下线&q ...

最新文章

  1. linux复杂逻辑判断,20.5 shell脚本中的逻辑判断
  2. VTK:小部件之LineWidget2
  3. 用 Visual Studio Code 在 macOS 上创建首个 ASP.NET Core 应用程序
  4. python爬虫知识点总结(七)PyQuery详解
  5. Linux Bash命令关于程序调试详解
  6. 编译libpng出错:pnglibconf.c fatal error: zlib.h 没有那个文件或目录
  7. 机器人三大定律只是人类的一厢情愿 AI可能并不遵守
  8. 优思学院|精益生产的前世今生
  9. 剑网三插件入门教程(2):在游戏中调试Lua代码
  10. ear的英语怎么念_不一样的高阶美式英语视频字母表 - A到I
  11. JS 小坑 - AJAX请求的小坑,请求接口404
  12. Android原生系统开发如何优雅的提供系统级的API供第三方程序调用?
  13. linux下的磁盘状态查看方式
  14. android 动态渐变,Android 动态修改渐变 GradientDrawable
  15. 【考研数学】一文搞定不等式
  16. 说话不要急,更不能乱,想说什么就说什么,那就是想死
  17. 人生的转折点人生的遗憾
  18. 报名照片太大怎么压缩?压缩图片到固定大小的方法
  19. NetFlow学习笔记
  20. 品牌定位个性六种形态及结论的重大意义

热门文章

  1. 【githubgirl】自主导航无人机的硬件组成与搭建方案
  2. 高通平台 mipi转接屏调试 (以转lvds icn6202例)
  3. win11 更新后无法打开商店、记事本、设置、计算器等内置应用的解决办法【亲测有效】
  4. 谭浩强C++ 第四章
  5. 电脑本地,WiFi都能连上,但就是上不去网
  6. python小游戏 吃豆人小游戏设计与实现
  7. zabbix3.0版本部署使用
  8. ESL3.4 学习笔记(奇异值分解与拉格朗日乘子法下的岭回归,Lasso回归,最小角回归及三者对比分析)
  9. 【树莓派分享——Raspberry Pi 官方系统安装及VNC查看器显示】
  10. 遗传算法——君主方案代码实现