FPM(FastCGI 进程管理器)是 PHP FastCGI 的主要实现,包含大部分对高负载网站有用的功能。
它的功能包括:
支持平滑停止/启动的高级进程管理功能;
进程池可以工作于不同的 uid/gid/chroot 环境下,并监听不同的端口和使用不同的 php.ini 配置文件(可取代 safe_mode 的设置);
可配置的 stdout 和 stderr 日志记录;
在发生意外情况的时候能够重新启动并缓存被破坏的 opcode;
文件上传优化支持;
"慢日志" - 记录脚本(不仅记录文件名,还记录 PHP backtrace 信息,可以使用 ptrace 或者类似工具读取和分析远程进程的运行数据)运行所导致的异常缓慢;
fastcgi_finish_request() - 特殊功能:用于在请求完成和刷新数据后,继续在后台执行耗时的工作(录入视频转换、统计处理等);
动态(dynamic)/按需(ondemand)/静态(static)子进程产生;
基础和扩展运行状态信息(类似 Apache 的 mod_status),支持各种格式,如: json, xml 和 openmetrics;
基于 php.ini 的配置文件。