当前位置: 首页 > news >正文

OOM Killer 选中你的进程只用了 0.3 毫秒——追踪 oom_badness() 的打分公式和 5 个可调旋钮

一台 64GB 内存的服务器,跑着你的 Java 应用、Redis、MySQL、Nginx。某天凌晨 3:47,java 进程消失了。dmesg里一行冰冷的记录:

[14523.413289] Out of memory: Killed process 3742 (java) total-vm:8234512kB, anon-rss:4182736kB, file-rss:0kB, shmem-rss:0kB, UID:1000 pgtables:12048kB score:653

score:653。内核在所有进程里算了一遍分,你的 java 拿了 653 分,最高。从开始扫描进程列表到最终发出 SIGKILL,整个选拔过程在几百微秒内完成。OOM Killer 不犹豫,不商量,不给你 graceful shutdown 的机会。SIGKILL 无法被捕获,无法被忽略。进程直接消失。

这篇拆一件事:OOM Killer 是怎么算出这个分数的,以及你有哪些旋钮可以拧。


OOM Killer 什么时候被触发

OOM Killer 不是一个独立的守护进程,不是一个定时任务,也不是谁手动调用的。它被嵌在内核的内存分配路径里——只有当一次内存分配请求走到了所有回收手段都失败的绝境时,才会被激活。

理解触发时机,要从 Linux 的内存分配入口说起。

从 alloc_pages 到山穷水尽

当内核需要分配物理页面时,调用

http://www.jsqmd.com/news/699930/

相关文章:

  • 5分钟掌握B站视频下载:BilibiliDown终极免费工具使用指南
  • 光伏四可装置设备性能评估:光伏组件衰减率与逆变器效率监测
  • 真空型压力传感器品牌推荐 厂家排行榜 - WHSENSORS
  • 终极Qwerty Learner打字练习软件完整指南:3步快速提升英语输入速度
  • 代价敏感SVM解决数据不平衡分类问题实战
  • 2026年4月 全国GEO优化服务商榜单 AI搜索行业深度解析
  • 2026宁波展厅设计核心转化技巧一线实战解析
  • 如何快速搭建全平台直播弹幕监控系统:面向开发者的终极解决方案
  • 【仅开放72小时】CUDA 13.3.1生产环境适配清单(含PyTorch 2.4/DeepSpeed 0.14/Triton 3.0兼容性矩阵+17个已验证patch)
  • DeepSeek-V4
  • 如何将Spotify歌单永久保存到本地音乐库?
  • Dify同时接入DeepSeek和Ollama:云端省钱+本地隐私,一个应用随便切
  • 昨天还在吹的概念,今天就落后了?AI圈生存指南
  • 【C++高吞吐MCP网关成本控制白皮书】:20年架构师亲授3大降本增效核心策略(实测QPS提升37%,硬件成本直降42%)
  • 异构计算与总线拆分:TVS-h874 混合架构解析
  • 哪些企业需要做品牌资产成熟度认证?——6类企业清单,看看你是否在列
  • 杭州茅台酒回收:西湖区鉴定与流程科普
  • ncmdumpGUI:让网易云音乐加密文件重获自由的终极解决方案
  • AI分子对接
  • 如何把普通手机变成AI手机?基于侠客工坊的多机协同矩阵解决方案
  • Kindle漫画转换神器:5步打造完美电子墨水屏阅读体验
  • 别再用FR4不行了!实测12G-SDI在普通PCB板材上的完整走线指南(附阻抗计算与AntiPad避坑)
  • 2027届考生及家长必看:2026济南十大文化课冲刺机构深度测评 - 品牌企业推荐师(官方)
  • 视频创作工具持续升级跨境社媒内容生产流程如何做轻量化
  • 为什么Photoshop图层批量导出工具能大幅提升设计效率?
  • 如何快速搭建Switch游戏环境:Ryujinx模拟器完整配置指南
  • Python3 模块
  • 2026年乌鲁木齐房屋渗漏不用愁!5家正规防水公司推荐+避坑指南 - 品牌企业推荐师(官方)
  • 保姆级教程:在Vue3项目里用ECharts GL搞个炫酷的3D地图(附可点击、飞线、天空盒源码)
  • 大模型预训练技术深度解析:从原理到实践