什么原因导致了这些冲洗过程?

什么原因导致了这些冲洗过程?

flush这些过程是什么?

$ ps aux | grep flush
root       710  0.0  0.0      0     0 ?        S     2012   2:29 [flush-202:1]
root     10732  6.2  0.0      0     0 ?        S    Apr14 453:33 [flush-202:80]
ubuntu   24009  0.0  0.0   8080   900 pts/3    S+   06:26   0:00 grep --color=auto flush

我注意到该flush-202:80进程经常跳转到顶部top。这是在运行 Apache、MySQL 和 Solr 进程的 Ubuntu Server 12.04 上。我在 Google 上搜索这个主题时,我发现另一篇 SF 帖子top其中提到这些进程不应该消耗太多的 CPU。该帖子中提出的解决方案提到重新启动系统,这正是我首先探索并发现这些进程的方式:系统不会重新启动

答案1

这些数字会告诉您冲洗过程正在进行什么。

grep ^ /sys/class/block/*/dev

你会看到类似

:
/sys/class/block/sda1/dev:8:1
/sys/class/block/sda2/dev:8:2
/sys/class/block/sda5/dev:8:5
/sys/class/block/sda6/dev:8:6
/sys/class/block/sda/dev:8:0
:

将其与您的ps ax | grep flush

10213 ?        S      0:00 [flush-8:0]

并且您可以看到flush正在进行的是我的/dev/sda

您可以通过以下方式获取更多信息

grep "201:80" /proc/self/mountinfo
grep "201:1" /proc/self/mountinfo

lsof | grep "201,80"
lsof | grep "201,1"

查看哪些进程打开了这些设备上的哪些文件。

在发生这种情况之前和发生时,您会看到什么top?最好是追踪问题,而不是重新启动。一旦找到导致问题的进程,您就可以调整并/proc/sys/vm/dirty_background_ratio进行补偿。/proc/sys/vm/dirty_expire_centisecs/proc/sys/vm/dirty_ratio

相关内容