Ubuntu php-fpm max_requests参数详解

作者:技术拾光

时间:2026-07-24

浏览:171

PHP-FPM配置中的max_requests参数定义子进程在被终止前最多处理的请求数,通过定期回收进程防止内存泄漏。典型设置如500,子进程处理完指定数量后自动退出并由新进程接替,是生产环境中的稳妥实践。

文章目录

PHP-FPM中max_requests参数的作用

在 PHP-FPM 的配置中,有一个参数叫 max_requests,它定义在池配置文件(通常是 /etc/php/版本号/fpm/pool.d/www.conf)里。简单来说,这个参数规定了每个 PHP-FPM 子进程在被终止之前,最多能处理多少个请求。

Ubuntu php-fpm max_requests参数详解

当一个子进程处理完指定数量的请求后,它会被自动“退休”,然后一个新的子进程会立刻顶上。你可能会问,为什么要这么折腾?其实原因很直接:长时间运行的子进程容易积累内存泄漏,导致内存占用越来越高。通过定期重启子进程,就能有效避免这个问题。

max_requests的典型设置与示例

举个例子,把 max_requests 设为 500 或 1000,意味着每个子进程在完成相应数量的任务后就会被回收,内存泄漏的风险也就被控制在了一个合理的范围内。下面是一个典型的动态进程管理配置:

pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
pm.max_requests = 500

在这个例子里,max_requests 被设置为 500,每个子进程处理完 500 个请求后就会主动退出,让新的进程接手。这算是生产环境里一个比较稳妥的实践经验。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章