dirty_ratio与dirty_background_ratio参数区别--系统优化必选

简介:

vm.dirty_background_ratio:这个参数指定了当文件系统缓存脏页数量达到系统内存百分之多少时(如5%)就会触发pdflush/flush/kdmflush等后台回写进程运行,将一定缓存的脏页异步地刷入外存;

vm.dirty_ratio:而这个参数则指定了当文件系统缓存脏页数量达到系统内存百分之多少时(如10%),系统不得不开始处理缓存脏页(因为此时脏页数量已经比较多,为了避免数据丢失需要将一定脏页刷入外存);在此过程中很多应用进程可能会因为系统转而处理文件IO而阻塞。



之前一直错误的一位dirty_ratio的触发条件不可能达到,因为每次肯定会先达到vm.dirty_background_ratio的条件,后来才知道自己理解错了。确实是先达到vm.dirty_background_ratio的条件然后触发flush进程进行异步的回写操作,但是这一过程中应用进程仍然可以进行写操作,如果多个应用进程写入的量大于flush进程刷出的量那自然会达到vm.dirty_ratio这个参数所设定的坎,此时操作系统会转入同步地处理脏页的过程,阻塞应用进程。

本文转自激情燃烧的岁月博客51CTO博客,原文链接http://blog.51cto.com/liuzhengwei521/2082989如需转载请自行联系原作者


weilovepan520

相关文章
|
3月前
|
缓存 关系型数据库 MySQL
整体方案 参数调优 innodb_buffer_pool_size
【8月更文挑战第14天】
45 0
|
6月前
|
关系型数据库 MySQL
innodb_buffer_pool_size 配置文件设置的值和查询的值怎么不一致
您可以配置缓冲池大小 脱机或在服务器运行时。中描述的行为 本节适用于这两种方法。更多信息 关于在线配置缓冲池大小,请参阅在线配置 InnoDB 缓冲池大小。InnoDB 当增加或减少innodb_buffer_pool_size时, 操作以块的形式执行。块大小由 innodb_buffer_pool_chunk_size 配置选项定义,该选项的缺省值为 。有关更多信息,请参阅配置 InnoDB 缓冲池区块大小。128M 缓冲池大小必须始终等于 innodb_buffer_pool_chunk_size * innodb_buffer_pool_instances 的倍数或倍数。 如果将in
|
缓存 Linux 数据安全/隐私保护
实战分享|Write Cache设置效果为何有差异?
sdparm和hdparm去修改HDD的write cache,发现在系统下write cache设置的效果有差异。
|
SQL 关系型数据库 MySQL
MGR修改max_binlog_cache_size参数导致异常
MGR修改max_binlog_cache_size参数导致异常
165 0
MGR修改max_binlog_cache_size参数导致异常
|
流计算
四十四、nimbus,supervisor进程自动停止(Read a frame size of ..., which is bigger than the maximum allowable...)
四十四、nimbus,supervisor进程自动停止(Read a frame size of ..., which is bigger than the maximum allowable...)
四十四、nimbus,supervisor进程自动停止(Read a frame size of ..., which is bigger than the maximum allowable...)
|
关系型数据库 Oracle