Битва PHP: Apache vs PHP-FPM
Битва PHP: Apache vs PHP-FPM
Я не раз сцеплялся в админских обсуждениях на тему нецелесообразности PHP-FastCGI. Споров много, реальных данных мало. Замечу сразу, да, я лицо заинтересованное. Но подтасовкой не занимался и в ходе теста, три раза готов был признать свою ошибку
Немного теории. Я вообще не знаю, почему все FastCGI реализации PHP носят префикс “Fast”. Ведь Fast-CGI это целый интерфейс работы скрипта, под него нужно оптимизировать скрипты, чтобы получить его достоинства. Но мало того что этого никто не делает, для этого в PHP вообще не существует никаких интерфейсов. Ну на эту тему можно почитать статью: почему FastCGI не ускоряет PHP
Я решил сравнить апач с широкоизвестным fpm менеджером. В плане производительности.
Что тестировалось?
Тестировались различные варианты использования mod_php(5) + apache(1,2) против использования наиболее популярного FastCGI-спаунера PHP - PHP-FPM.
Железо сервера: AMD Sempron LE-1150 1600MHz, M/B Abit A-N68SV, 1,5 Gb DDR RAM
Система: CentOS 5 Final x86_64. ядро 2.6.18-53.el5
Прочее: Распределенная файловая система IBM GPFS. Это не имеет отношения к тесту, просто так получилось )
Какие версии софта использовались?
Я обращаю внимание: Apache использовался лишь в качестве бекенда для выполнения скриптов. Если его нагрузить статикой, все будет намного хуже. Но ведь FastCGI-сервер мы не нагружаем статикой?
1. Apache 2.0.63, mpm worker, dso mod_php v 5.2.6, нет лимита чайлдов
2. Apache 2.0.63, mpm worker, dso mod_php v 5.2.6, ServerLimit-> 1, MaxThreads -> 75
3. Apache 2.0.63, mpm prefork, dso mod_php v 5.2.6, ServerLimit-> 5
4. Apache 1.3.41, mpm prefork, статический mod_php v 5.2.6, MaxClients ->7
5. Nginx 0.6.31, php-fpm v 5.2.6 via unix socket, php-fpm MaxServers -> 5
Поскольку “соревнование” по параметру потребляемой памяти было в разных весовых категориях (PHP-FPM умеет держать в памяти только фиксированное число процессов, в то время как apache динамически регулирует их количество), то к тесту № 4 все шансы уровнялись.
подробнее..
http://pentarh.com/wp/2008/07/11/test-results-apache-vs-php-fcgi/
Битва PHP: Apache vs PHP-FPM
Я не раз сцеплялся в админских обсуждениях на тему нецелесообразности PHP-FastCGI. Споров много, реальных данных мало. Замечу сразу, да, я лицо заинтересованное. Но подтасовкой не занимался и в ходе теста, три раза готов был признать свою ошибку
Немного теории. Я вообще не знаю, почему все FastCGI реализации PHP носят префикс “Fast”. Ведь Fast-CGI это целый интерфейс работы скрипта, под него нужно оптимизировать скрипты, чтобы получить его достоинства. Но мало того что этого никто не делает, для этого в PHP вообще не существует никаких интерфейсов. Ну на эту тему можно почитать статью: почему FastCGI не ускоряет PHP
Я решил сравнить апач с широкоизвестным fpm менеджером. В плане производительности.
Что тестировалось?
Тестировались различные варианты использования mod_php(5) + apache(1,2) против использования наиболее популярного FastCGI-спаунера PHP - PHP-FPM.
Железо сервера: AMD Sempron LE-1150 1600MHz, M/B Abit A-N68SV, 1,5 Gb DDR RAM
Система: CentOS 5 Final x86_64. ядро 2.6.18-53.el5
Прочее: Распределенная файловая система IBM GPFS. Это не имеет отношения к тесту, просто так получилось )
Какие версии софта использовались?
Я обращаю внимание: Apache использовался лишь в качестве бекенда для выполнения скриптов. Если его нагрузить статикой, все будет намного хуже. Но ведь FastCGI-сервер мы не нагружаем статикой?
1. Apache 2.0.63, mpm worker, dso mod_php v 5.2.6, нет лимита чайлдов
2. Apache 2.0.63, mpm worker, dso mod_php v 5.2.6, ServerLimit-> 1, MaxThreads -> 75
3. Apache 2.0.63, mpm prefork, dso mod_php v 5.2.6, ServerLimit-> 5
4. Apache 1.3.41, mpm prefork, статический mod_php v 5.2.6, MaxClients ->7
5. Nginx 0.6.31, php-fpm v 5.2.6 via unix socket, php-fpm MaxServers -> 5
Поскольку “соревнование” по параметру потребляемой памяти было в разных весовых категориях (PHP-FPM умеет держать в памяти только фиксированное число процессов, в то время как apache динамически регулирует их количество), то к тесту № 4 все шансы уровнялись.
подробнее..
http://pentarh.com/wp/2008/07/11/test-results-apache-vs-php-fcgi/