51学通信论坛2017新版

标题: Linux内核页回收swappiness参数确切含义 [打印本页]

作者: admin    时间: 2017-11-15 21:59
标题: Linux内核页回收swappiness参数确切含义
这两天看微博上有人讨论swappiness相关问题,mysqlperformanceblog上也有人说将swappiness设成0后MySQL被“意外” kill掉,另外自己所在团队线上也遇到过类似问题,大家对这个参数的含义可能还不是很清楚,个人尝试写篇文章详细解释下这个参数。
本文主要尝试解释两个问题:
1. swappiness的确切含义是什么,它对内核进行页回收机制的影响。
2. swappiness设置成0,为什么系统仍然可能会有swap发生。
一. 关于内存分配与页回收(page reclaim)
page reclaim发生的场景主要有两类,一个是kswapd后台线程进行的活动,另一个是direct reclaim,即分配页时没有空闲内存满足,需要立即直接进行的页回收。大体上内存分配的流程会分为两部分,一部分是fast path,另一部分是slow path,通常内存使用非紧张情况下,都会在fast path就可以满足要求。并且fast path下的内存分配不会出现dirty writeback及swap等页回收引起的IO阻塞情况。

声明:本文转载自网络。版权归原作者所有,如有侵权请联系删除。




欢迎光临 51学通信论坛2017新版 (http://bbs.51xuetongxin.com/) Powered by Discuz! X3