it-swarm.com.ru

mod_php против cgi-fast-cgi

Я пытался понять точное значение/цель загрузки php как модуль Apache против остальных.

Когда php установлен как модуль Apache, что именно происходит? Например, происходит ли чтение файла php-ini каждый раз, когда приходит запрос php, или когда модуль php загружается один?

51
Karthick

php.ini читается, когда модуль PHP загружен в mod_php, FastCGI и FPM. В обычном режиме CGI файл конфигурации должен быть прочитан во время выполнения, потому что нет никаких предварительно обработанных процессов любого вида.

Я думаю, что единственное реальное преимущество запуска PHP в качестве модуля внутри веб-сервера состоит в том, что конфигурация может быть проще. Вы получаете намного лучшую производительность, когда запускаете его в режиме FastCGI или FPM и можете использовать многопоточный (или разветвленный) Apache, или когда вы можете полностью исключить Apache.

24
Emil Vikström

Эта ссылка может помочь: http://2bits.com/articles/Apache-fcgid-acceptable-performance-and-better-resource-utilization.html

Заключение

Если вам нужна чистая скорость, оставайтесь с mod_php.

Однако для лучшего использования ресурсов и повышения эффективности рассмотрите возможность перехода на fcgid.

14
stormwild

php.ini читается, когда модуль загружается в случае модуля Apache. PHP CGI использует исполняемый файл интерпретатора php, как любой другой скрипт Shell. Поскольку при каждом вызове состояние не задействовано, файл конфигурации должен быть прочитан каждый раз в случае CGI.

2
Anand