Назад | Перейти на главную страницу

Readahead для / var / lib / mongo установлен на 4096 КБ

Я пытаюсь установить опережение для mongo 256 или меньше, как рекомендовано, я посмотрел на документация для любых указаний, и я нашел это:

Убедитесь, что настройки опережения чтения для блочных устройств, на которых хранятся файлы базы данных, подходят. Для шаблонов использования произвольного доступа установите низкие значения опережения чтения. Опережающее чтение 32 (16 КБ) часто работает хорошо. Для стандартного блочного устройства вы можете запустить sudo blockdev --report чтобы получить настройки опережения и sudo blockdev --setra <value> <device> для изменения настроек опережения чтения. Обратитесь к руководству по вашей конкретной операционной системе для получения дополнительной информации.

когда я делаю sudo blockdev --report Я получил:

rw  8192   512  4096          0     32212254720   /dev/sda
rw  8192   512  4096       2048     31162630144   /dev/sda1
rw  8192   512  4096   60866560      1048576000   /dev/sda2
rw  8192   512  4096          0     75161927680   /dev/sdb
rw  8192   512  4096       2048     75159830528   /dev/sdb1

как мне узнать, что связано с монго?

Это, вероятно /dev/sdb учитывая указанные вами размеры, но вы можете узнать, запустив df -h. Я храню свои данные в /data и вот мой соответствующий результат:

> df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1        70G   18G   49G  27% /
/dev/sdc1        932G  682G  250G  74% /data

В моем случае это означает, что я должен изменить для опережения чтения /dev/sdc1. Выясните, где вы храните свои данные и какое блочное устройство соответствует, а затем установите опережающее чтение на этом устройстве. В моем случае:

sudo blockdev --setra 256 /dev/sdc

Чтобы продолжить перезагрузку, вам нужно будет добавить эту команду или похожую на сценарий загрузки, например rc.local, или, возможно, поместить ее в свой сценарий инициализации MongoDB, чтобы убедиться, что он установлен до запуска процесса MongoDB (заголовок чтения считывается только один раз. процесс при запуске, следовательно, требуется перезапуск процесса, чтобы повлиять на изменение).

Я написал сценарий инициализации, чтобы установить / отключить это для меня:

readahead initscript