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

Как ограничить использование памяти подпроцессом Apache?

- Да, именно такой простой вопрос. Слишком легко потреблять много оперативной памяти в безумном mod_XxX (скажем, mod_php), поэтому мне просто интересно, что позволяет Apache в качестве меры противодействия.

Apache этого не делает, но PHP позволяет ограничить максимальный объем используемой памяти в php.ini. Например:

memory_limit = 128M

Конечно, если кто-то достигнет этого предела, фактический объем используемой оперативной памяти будет немного выше из-за встроенного PHP в Apache.

В ulimit функция оболочки (которая использует setrlimit системная функция) может ограничивать использование памяти каждым процессом.

В системе Debian это можно сделать, добавив это в конец /etc/default/apache2:

ulimit -v 1048576

http://feeding.cloud.geek.nz/posts/putting-limit-on-apache-and-php-memory/

Смотрите также

  • человек улимит
  • человек setrlimit

Я считаю, что на него следует ответить именно такой цитатой из комментариев: «Нет одного (решения). Это полностью зависит от модулей, которые вы используете» © Майкл Хэмптон