Apache2 prefork - контроль над Индейцем

Вопрощаю всех столкнувщихся или же когда то попадавших в ситуацию, подобно моей:

— Сервер Gentoo_x64
— Apache_mpm_prefork

Регулярно убивает всю память и превыщает LA. Адекватно отследить вообще не получается, моментально LA3 > LA9 и все! Железный ресет только помогает.

— Как отследить?
— Чем или как ограничить возможности Индейца, к примеру если процесс больше 1 гига, чтобы система валила такой процесс?
— Подскажите софт для записи системных счетчиков, к примеру слежка за процессами которые жрут память (Имя процесса, время)

Огромне всем спасибо. Устал уже бороться с нестабильностью и костылями. Любой возможной информации буду рад.

Сам не пробовал, но советую

Сам не пробовал, но советую взглянуть на cgroups в ядре. В частности на CONFIG_CGROUP_MEM_RES_CTLR
Как с этим работать — не подскажу. Возможно кто-нибудь из форумчан знает. Ну, и гугол в помошь.

Рекоммендую почитать как

Рекоммендую почитать как работает префорк-модуль у апача. После какого-то количества обработанных запросов форк убивается и на его место создаётся новый. Таким образом даже наличие утечек памяти не сильно сказывается на общей стабильности системы. Кроме того посмотрите какое максимальное число форков вы разрешили создавать в настройках.

То есть надо смотреть вот какие параметры:

StartServers, MinSpareServers, MaxSpareServers - число форков.

MaxRequestsPerChild - количество запросов до смерти форка.

Рекоммендую первые три зафиксировать в каком-то небольшом состоянии (одинаковом для всех) - тогда популяция форков будет примерно постоянной и предсказуемой. А второе число попробовать уменьшить.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".