Попробуйте здесь, я думаю, это та же проблема :)
Как остановить процессы Apache www-data?
«Apache, работающий как www-data, является значением по умолчанию в Debian Lenny. Вы можете спутать единственный« родительский »процесс apache (работающий от имени root) с« дочерними »apache, выполняющими Обработка HTTP-запроса (выполняется как www-data). И "родительский", и "дочерний"
и это не сработало, снова появляется новый процесс
Правда? Хотя я ожидал, что появится больше процессов, убитый вами должен исчезнуть.
Если вы хотите остановить все это, выключите демон, я не знаю, как он настроен на вашем компьютере, но здесь я бы сделать ....
/etc/init.d/php-fpm stop
Но это не способ решить проблему «Я обнаружил, что существует много процессов и занято много воспоминаний». Вам следует начать с правильного анализа трафика и профилирования кода.
Нет 100% ничего плохого в том, что вы видите. PHP - это модуль, запускаемый Apache, которым управляет пользователь www-data
. Вы видите нормальное поведение. И большая часть изменений, внесенных мной для повышения производительности, связана с конфигурациями Apache, а не с настройками PHP.
Если вы хотите лучше контролировать это поведение, есть два места для внесения изменений.
1. Отрегулируйте ограничение памяти PHP: Откройте файл php.ini, который должен находиться в /etc/php5/apache2/php.ini
, и отредактируйте параметр
называется предел_памяти
. Он должен быть установлен на 64M или 32M. Но это
в основном максимальный предел памяти для любого процесса PHP, который привязан к
каждый процесс Apache2 (см. ниже) - может использовать. Итак, если вы запустите WordPress &
он хочет запускать любой процесс с 32M RAM, без проблем. Если это нужно
больше сценарий не удастся, и ваш журнал ошибок Apache2 расположен по адресу
/var/log/apache2/error.log
заполнится ошибками.
2. Настройте конфигурацию Apache в соответствии со своими потребностями: Поскольку PHP - это модуль, работающий в Apache, чем больше процессов Apache у вас запущено, тем больше памяти будет израсходовано. Если у вас стандартная установка Apache2, откройте этот файл и посмотрите: /etc/apache2/apache2.conf
. В частности, вот параметры, которые я всегда настраиваю при стандартной установке.
KeepAlive
. И я настраиваю это в зависимости от потребностей сервера. Для разработки
среды, я держу это на низком уровне. Допустим, 3 или 4. Для производства
среды, которые мне кажутся KeepAlive
полезны только примерно для 1/3
подключений. Поэтому я установил это значение примерно на 24 или 32. Но это память.
беспокойство, я бы оставил это низким, поскольку больше KeepAlive
обрабатывает вас
чем больше у вас запущено клиентов и тем больше у вас оперативной памяти
использовали для каждого процесса. KeepAliveTimeout: Это в основном измерение того, насколько быстро можно загрузить страницу на вашем сайте. Подумайте об этом: зачем поддерживать связь живым по прошествии времени, которое требуется клиенту, чтобы получить контент для одного страница? По моему опыту, установка от 2 до 5 секунд - это хорошо. Но когда для рендеринга страницы он отклоняется до 5 секунд, это означает, что что-то действительно душит основную систему. Так что для меня это знак для переоценки кода и очистки ресурсоемкого кодирования.
Затем перейдите в область mpm_prefork_module
. Вот как я настраиваю свою среду разработки; это для сайта с низким трафиком.
StartServers 8 MinSpareServers 8 MaxSpareServers 8 ServerLimit 16 MaxClients 16 MaxRequestsPerChild 2000
В основном это устанавливает все ограничения и параметры для базовой установки Apache. Я считаю, что каждый параметр должен быть понятным, но вот моя разбивка.