Битва PHP: Apache vs PHP-FPM

confguru

ExAdmin
Команда форума
Битва 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/
 

Krishna

Продался Java
И какая мораль? Экономия на спичках на CPU и заметная по памяти?
 

fisher

накатила суть
ждём повторных измерений - тестить 75 макс тредов и макс 5 fcgi процессов это ой как сильно блин
 

fixxxer

К.О.
Партнер клуба
>И какая мораль?

мораль тут, пожалуй, прежде всего такая, что надо понимать, что измеряешь :)
 
Сверху