🎛 oomd.
А ещё, вот на что рекомендую обратить внимание (на случай если как и я, пропустили эту новость):
Facebook открыл код своего обработчика нехватки памяти в системе.
ℹ️ Чем удобен и хорош oomd - у нас появляется возможность описать (.json конфигом) логику работы обработчика, мы можем указать ему какие приложения можно завершать, при каких условиях это делать, какие приложения завершать нельзя и т. д. Сами процессы, описывая конфиг, мы можем группировать как нам будет удобно, и применять к группам определённые правила.
Работает oomd в пространстве пользователя, что на синтетических тестах показало куда бОльшую эффективность чем OOM я ядре. Инструмент уже активно используется в самом Facebook и при этом, уже отлично показал себя в работе под серьёзными нагрузками.
🔹 На русском языке информацию можно изучить, например, на OpenNET.
🔸 Github проекта.
Будем смотреть на oomd в работе. На первый взгляд, выглядит очень интересно, особенно если предложенную PSI (Pressure Stall Information) подсистему таки примут в ядро.
P. S. Ранее я уже писал о куда более простом аналоге обработчика - earlyoom. Штука весьма занятная, хотя oomd конечно, даёт куда больше возможностей, если пытаться их сравнить. 🤓
#oom
Post #877
5.42K