FPM (FastCGI Process Manager, менеджер процессов интерфейса FastCGI) — основная реализация интерфейса FastCGI для PHP, которая в основном содержит функционал, полезный для высоконагруженных сайтов.
Эта функциональность включает:
Продвинутое управление процессами с корректной (graceful) процедурой остановки и запуска;
Пулы, которые умеют запускать воркеры с разными uid, gid, chroot и окружением за счёт прослушивания разных портов и работы с разными файлами php.ini (замещение safe_mode);
Настраиваемое ведение журнала потоков вывода (stdout) и ошибок (stderr);
Аварийный перезапуск в случае внезапного разрушения opcode-кеша;
Поддержка ускоренной загрузки (accelerated upload);
slowlog — логирование необычно медленных скриптов; не только имён, но и PHP-трассировки, которое даёт команда ptrace и другие подобные функции чтения исполняемых данных (execute_data) удалённых процессов;
fastcgi_finish_request() — специальная функция для завершения запроса и сброса всех буферов данных, причём процесс сможет продолжать выполнение других длительных действий (конвертирование видео, обработка статистики и т. п.);
Динамическое, по требованию или статическое порождение дочерних процессов;
Базовая и расширенная информация о состоянии (аналогично модулю mod_status веб-сервера Apache) с поддержкой разных форматов наподобие json, xml и openmetrics;
Файл конфигурации на основе файла php.ini.