RU:What is PHP-FPM

From PHP-FPM

Jump to: navigation, search

php-fpm - это патч для PHP, для использования PHP как FastCGI процесса в высоконагруженных системах. Устраняет ряд проблем мешающих использовать PHP в режиме FastCGI.

Андрей Нигматулин представил набор патчей php-fpm к PHP 4/5, устраняющих ряд проблем, которые мешают использовать PHP в режиме FastCGI на высоконагруженных системах.

Возможности php-fpm:

  • Управление процессами. Возможность "плавно" останавливать и перезапускать php воркеры без потери запросов. Возможность плавно обновлять конфигурацию и binary без потери запросов;
  • Ограничение ip адресов, с которых могут приходить запросы от web сервера;
  • Динамическое количество процессов, в зависимости от нагрузки (TODO);
  • Запуск воркеров с разными uid/gid/chroot/ environment и разными php.ini опциями;
  • Логирование stdout & stderr рабочих процессов;
  • Аварийный перезапуск всех процессов при случайном разрушении shared memory opcode cache, если используется акселератор;
  • Принудительное завершение подвисших процессов, если set_time_limit() не срабатывает (TODO);