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

Многие процессы: httpd -k restart -DSSL

Я пытаюсь больше понять, как работает Apache. Я использовал top -c для анализа процессов Apache. На двух моих серверах постоянно есть:

httpd -k restart -DSSL 
httpd -k restart -DSSL 
httpd -k restart -DSSL 
httpd -k restart -DSSL 
httpd -k restart -DSSL 

Насколько я понимаю, это перезапускает Apache. Почему столько процессов перезапускают Apache? Я ожидал:

httpd -DSSL 

Может кто-нибудь объяснить это начинающему админу? Все сайты работают нормально, стоит ли мне беспокоиться об этом?

Спасибо Оливер

Если вы используете отличный htop утилиту и расположите их в виде дерева, вы увидите, что это дочерние процессы Apache. Фактически, глядя на окно, которое я администрирую только что, все мои процессы Apache (родительские и дочерние) имеют этот путь.

Из руководства Apache:

Второй способ сигнализации httpd процессы заключается в использовании -k параметры командной строки: stop, restart, graceful и graceful-stop, как описано ниже. Это аргументы в пользу httpd двоичный, но мы рекомендуем отправлять их, используя apachectl скрипт управления, который передаст их в httpd.

-DSSL просто говорит Apache начать с поддержки SSL.

Если у вас постоянно порождается много дочерних процессов, это необходимо для того, чтобы учесть все, что вы установили в своем httpd.conf - или один из суб-httpd confs в зависимости от ваших настроек. Например, на моем VPS я использую Предварительные вилки MPM надстройка, поэтому моя основная конфигурация обрабатывается в httpd-mpm.conf. Итак, моя конфигурация сервера:

<IfModule mpm_prefork_module>
     StartServers 1
     MinSpareServers 1
     MaxSpareServers 5
     ServerLimit 4
     MaxClients 7
     MaxRequestsPerChild 10
</IfModule>

Это на виртуализированной машине с двойным процессором, 1 ГБ ОЗУ, 1 ГБ подкачки и большим количеством дискового пространства. Linux сообщает как Intel Xeon X3360 @ 2,83 ГГц.

Это сравнительно низкие значения, но сервер уже занят обработкой почты, фильтрацией спама, DNS и MySQL (что является ОГРОМНЫМ потребителем ресурсов и не любит размещаться на виртуальных машинах, даже когда настроен). Я бы предпочел увеличить время загрузки страницы, чем случайно подвергнуть себя DDoS-атакам, потому что я жадно ограничиваю свои соединения.

Вам нужно так много прочитать, чтобы полностью понять влияние дочерних процессов, требований к памяти, что на самом деле хорошо или плохо в отношении использования подкачки / использования физической памяти / дискового ввода-вывода / высоких или низких лимитов Apache ... что еще хуже, многие люди будут говорить много противоположных вещей, единственный способ по-настоящему узнать, что работает для вас, - это вызвать постоянную умеренную нагрузку на сервер и посмотреть, как он работает. Совет: если ваш SSH-терминал работает медленно под нагрузкой, этого недостаточно.

Некоторые ссылки для нагрузочного тестирования / тестирования производительности:

tl; dr: если ваш сервер обслуживает страницы достаточно быстро и не влияет на нормальную производительность, ничего не трогайте. :-) Если вы что-нибудь трогаете, всегда сначала делайте резервную копию ваших конфигураций Apache. Настройка MySQL, вероятно, вызовет у вас гораздо больше головной боли в будущем ;-)