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

Потребление памяти Apache

В настоящее время у меня очень серьезные проблемы с выделенным сервером Linux CentOS. По какой-то особенной причине вся моя память используется apache, и в результате мой процесс qmail дает сбой.

Во-первых, почему qmail вылетает, если apache съедает всю память?

Как я могу понять причину этой проблемы? Мне помогает группа поддержки в Media Temple, но это выходит за рамки их поддержки, поэтому я не уверен, чем еще они могут мне помочь.

Я действительно очень смущен этим, поскольку, похоже, нет логического объяснения того, почему память используется. Я не получаю больше трафика на своих сайтах, чем обычно

Чтобы дать вам небольшую информацию о ситуации:

  1. Кажется, все это началось, когда я обновил Plesk и свой контейнер. Однако я не могу быть уверен в этом, и вполне вероятно, что в тот же день я делал другие вещи, чтобы
  2. Когда я смотрю на beancounters, он говорит, что в tcpsndbuf есть ошибка 547225. Я не знаю, что это значит, но по этой причине я считаю, что проблема связана с Apache. Могу ли я изучить это дальше?
  3. Хотя, вероятно, это не имеет значения, несколько недель назад я использовал инструмент Apache Benchmarking для имитации 1000 посещений одного из моих веб-сайтов.
  4. Несколько недель назад я тоже следил за Медиа Храмом »Делаем шаги лучше'для установки Monit, Munin, Plesk Health Monitor и общей настройки Apache и MySQL. Эти шаги, несомненно, оказали обратное влияние на сервер, поскольку с тех пор потребление памяти у меня значительно увеличилось. Я попытался вернуться к предыдущим файлам conf, но это не имело значения.

Я потратил много времени, пытаясь разобраться в этом, но я думаю, что проблема для меня слишком сложна. Есть ли у кого-нибудь совет?

ОБНОВИТЬ

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

Qmail может аварийно завершить работу, если Apache удерживает всю доступную память, а Qmail пытается выполнить форк, в результате чего не удается выделить необходимую память. Это также может привести к смерти родительского процесса.

Из того, что я видел в прошлом (и это может быть неверно в вашем случае), высокое использование памяти в Apache может также происходить из-за скриптов PHP или CGI, которые запускает Apache. Проверьте максимальное использование памяти в вашем php.ini, чтобы увидеть, установлено ли оно на разумное значение. Имейте в виду, что (насколько я помню) максимум 64 МБ в php.ini составляет 64 МБ на каждый выполняемый скрипт, поэтому, если у вас есть 10 потоков Apache, каждый из которых запускает скрипт, использующий максимальный объем памяти, это может вызвать проблемы.

Есть и другие сообщения о сбоях сервера, в которых есть полезная информация:

Тяжелое использование памяти Apache

Проблемы с памятью Apache

Проблемы с Apache и памятью