我注意到我们的一台CentOS机器昨晚的内存使用率接近100%。 在机器上的平均负载达到〜16,我注意到有几个pdflush进程在磁盘IO上被阻塞(运行状态D在顶部)。 我以为pdflush是用来交换数据从内存到磁盘(操作系统内存分页),但该特定的服务器没有安装交换分区。 那么在这种情况下,pdflush究竟做了什么?
pdflush的主要职责是刷新磁盘缓冲区caching(AFAIk这是它的唯一职责,但是Linux专家可能会纠正我)。 它刷新的caching包括已写入但尚未提交到磁盘的文件。
如果我记得正确的话, kswapd是虚拟进程,负责处理交换空间和从RAM到磁盘的内存页面的混洗。
为了您系统的健康,请为您的服务器设置一个交换分区(或者使用您的服务器)
类Unix系统希望能够交换。 当没有可用的交换(如磁盘缓冲区caching被挤压到一点点的内存,这真的可以使pdflush有一个糟糕的一天)时,可能会发生坏事。
即使你“永远”不使用交换空间,磁盘也足够便宜,你可以扔掉2G。