读取IO等待增加

当在软件RAID 1上运行ext3的Debian Linux机器上解决性能问题时,我将一个写无用的临时日志文件的进程的输出redirect到/ dev / null(ln -s / dev / null / foo)大约3MB / s。 然而,这种变化似乎也导致了写和全部IOwait时间的大幅度增加,这是我无法解释的,并且真的很感激一些关于…的input。

iostat: http : //oi45.tinypic.com/5l2mx0.jpg

写入延迟(应用于凌晨3点): http : //oi46.tinypic.com/33be1kw.jpg

更新18.04.13:

写IOwait仍然比以前更高,但我已经应用以下所有这些都至less有点有益…

  • 用noatime选项重新安装文件系统。
  • 更改为截止dateioscheduler。
  • 取得vm.swappiness 30(主机是约1GB的数据库,CMS和streamaudio)。
  • 将sda和sdb的预读从4096降低到256。
  • 对于/ dev / md2(主数据分区),将预读从256改为4096。

更新19.04.13:

  • 将主文件系统从ext3转换为ext4

从逻辑上讲,唯一可以增加响应时间(I / O等待)的事情是增加必须在“相同”事物上执行的操作次数。

假设:到/ dev / null的I / O会在驱动程序级别导致比磁盘(可能更多缓冲的)I / O更多的操作

testing:尝试将其切换回磁盘文件。 如果响应时间下降,那么需要处理比/ dev / null更长的时间。 如果响应时间保持不变,则与响应时间相关的变化同时发生。

–dave