Как выглядит жизненный цикл apache? - PullRequest
2 голосов
/ 11 августа 2011

Как часть моего учебного процесса, я подумал, что было бы хорошо, если бы я немного расширил знания о том, что я знаю об apache. У меня есть несколько вопросов, и, хотя я знаю, что некоторые вещи могут потребовать довольно длинного объяснения, я надеюсь, что вы можете предоставить обзор, чтобы я знал, куда идти искать. (желательно ссылка на mod_wsgi) Я прочитал некоторые ресурсы после поиска в Google, и то, что я знаю, пришло оттуда, поэтому, пожалуйста, потерпите меня.

  1. Как выглядит жизненный цикл apache до, во время и после получения http-запроса? Создает ли он новый дочерний процесс или создает поток в одном из дочерних процессов?

  2. Apache по умолчанию работает под www-data? Так что, если это так, если я хочу, чтобы каталог в папке моего проекта использовался для журналов, я могу изменить только группу папок на www-data и разрешить запись?

  3. Под каким пользователем будет запускаться интерпретатор python после вызова apache? И под какими процессами будут создаваться Popen или multiprocessing?

  4. Я бегал ps U www-data. Почему так много процессов с

S 0:00 / usr / sbin / apache2 -k start

Ответы [ 2 ]

2 голосов
/ 11 августа 2011

Модуль prefork Apache mpm обрабатывает одно соединение в одном процессе. Для быстрой обработки соединений и не порождения процессов по требованию apache поддерживает пул процессов. Это объясняет, почему вы видите так много процессов в списке процессов. Если соединение установлено, оно передается одному из уже существующих процессов.

Дополнительная информация здесь: http://httpd.apache.org/docs/2.0/en/mod/prefork.html

Ответ на вопрос 2) - да, apache всегда работает как www-данные, и вы можете предоставить доступ к любому каталогу, изменив права доступа группы к www-data.

1 голос
/ 11 августа 2011

Читать:

http://www.fmc -modeling.org / категория / проекты / апач / усилитель / Apache_Modeling_Project.html http://code.google.com/p/modwsgi/wiki/ProcessesAndThreading http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide#Delegation_To_Daemon_Process http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIDaemonProcess

Первый расскажет вам все подробности того, как Apache работает внутри. Последние относятся конкретно к mod_wsgi и модели процесса / потоков.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...