Должны ли мы отключить чрезмерную загрузку Linux в производственной среде

Я читал некоторые блоги о ярлыке чрезмерного коммитирования в Linux, например, http://www.etalabs.net/overcommit.html. Но Linux по умолчанию использует эвристический алгоритм. Поэтому мне интересно, если мы должны отключить его в производственной среде.

Если мы отключаем overcommit и имеем много процессов, которые требуют больше памяти. Найдем ли мы проблему выделения памяти немедленно или просто столкнемся с другим проводным результатом?

1 ответ

Решение

Вообще нет

Многие программы зависят от выделения огромного количества памяти, которая на самом деле не используется. Например, Java не очень хорошо работает при отключенном overcommit.

В некоторых случаях, например, с выделенным сервером PostgreSQL, лучше, чтобы ядро ​​своевременно отказывалось от распределений, а не OOM позже убивало сервер и останавливало службу. Используйте строгий режим overcommit с PostgreSQL:

sysctl -w vm.overcommit_memory=2
Другие вопросы по тегам