dirty_ratio per device

Я отредактировал /etc/rc.local и добавил следующее

/etc/init. d/start_bg_scripts

Затем я добавил /etc/init.d/start_bg_scripts:

#!/bin/bash
/usr/bin/screen -d -m -S script1 forever --minUptime 1 --spinSleepTime 1 -o script1out.log -e script1err.log -l script1forever.log -c php /path/to/script.php

The --minUptime 1 and --spinSleepTime 1 means that they keep trying to reconnect until the rest of the system services (e.g. mysqld) become available

4
15.11.2018, 12:11
2 ответа

Поэкспериментировав, я обнаружил, что dirty_ratio «мешок» достаточно правильно сбалансирован. Процессы, которые делают страницы грязными, каким-то образом ограничены. Один процесс cp может легко занять почти весь возможный кэш записи, но даже если вы запустите 10 конкурирующих процессов, они редко достигают ограничения кеша записи (dirty_ratio) вообще.

Поэтому я приписываю все проблемы упомянутой мной ошибке, связанной с CIFS. Если больше процессов хотят записать на быстрый локальный диск, ядро ​​использовало бы меньше для CIFS. Здесь больше процессов хотели просто использовать память, а ядро ​​не могло очистить и восстановить большой кеш записи CIFS из-за указанной ошибки. Вероятно, 30% dirty_ratio не было бы проблемой, если бы не ошибка.

3
27.01.2020, 20:48

Думаю, вы можете установить пропорцию грязного отношения на устройство через

echo RATIO> / sys / class / bdi / MAJOR: MINOR / max_ratio

2
27.01.2020, 20:48

Теги

Похожие вопросы