看到之前的一个问题,说系统wen’t需要频繁需要将内存里的dirty数据写回到文件。导致CPU的使用率非常高。所涉及的参数分别是下面三个。
vm.dirty_ratio=33
vm.dirty_writeback_centisecs=300
vm.dirty_expire_centisecs=1500
这个参数可以设置writeback的时间,防止tight loop
设置系统参数时,vm.dirty_ratio、vm.dirty_writeback_centisecs 和 vm.dirty_expire_centisecs 这三个参数在文件操作密集型的业务中起着重要作用。不合理的设置可能导致 CPU 使用率升高,影响系统性能。本文将简要介绍这些参数的作用,并说明它们如何影响文件操作性能以及 CPU 的利用率。
参数介绍
vm.dirty_ratio:该参数控制着系统内存中脏页占比的上限。当系统内存中脏页的占比超过 vm.dirty_ratio 设定的阈值时,系统会将脏页写回到磁盘。默认值通常为 20%,如果设置得过高,会增加内存中的脏页数量,加大写入压力;如果设置过低,会频繁触发写回操作。
vm.dirty_writeback_centisecs:该参数表示后台写回脏页的频率,单位为 1/100 秒。设置为 300 意味着系统每 3 秒检查一次是否有需要写回的脏页。较小的值会增加写回频率,从而减轻一次性写回的压力;而较大