Ubuntu PHP-FPM如何进行资源限制
作者:RiverSoul
时间:2026-06-29
浏览:0
在Ubuntu上配置PHP-FPM资源限制,需调整池配置中的pm.max_children、pm.start_servers等参数,重启服务后用php-fpmstat监控进程状态与资源占用,根据实际负载动态调整以有效控制内存和并发连接数。
在Ubuntu上跑PHP-FPM,资源限制这件事其实很多人容易忽略。进程数开得太大,内存吃光;开得太小,请求排队。怎么拿捏?核心就是读懂那几个配置参数,然后根据服务器的实际负载来调。下面直接说步骤。

1. 安装PHP-FPM
如果机器上还没有PHP-FPM,一条命令搞定:
sudo apt update
sudo apt install php-fpm
2. 配置PHP-FPM池
PHP-FPM用“池”来管理进程,系统默认会创建一个叫www的池。资源限制的活儿,全在这个池的配置文件里。
编辑池配置文件
文件路径一般是/etc/php/{版本号}/fpm/pool.d/www.conf。比如PHP 7.4,路径就是/etc/php/7.4/fpm/pool.d/www.conf。用你顺手的编辑器打开它:
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
设置资源限制
在文件里找到下面这几个参数,它们就是控制资源的核心:
pm.max_children:最大子进程数pm.start_servers:启动时创建的进程数pm.min_spare_servers:最小空闲进程数pm.max_spare_servers:最大空闲进程数pm.max_requests_per_child:每个子进程处理多少请求后自动重启
举个例子,把最大子进程限制到50,启动进程数和最小空闲都设为5,最大空闲设为35,每个子进程处理1000个请求就重启:
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests_per_child = 1000
3. 重启PHP-FPM服务
改完了保存,然后重启让配置生效:
sudo systemctl restart php7.4-fpm
4. 监控资源使用
调完了得盯一盯效果。常用工具像top、htop都能看,不过有一个专门针对PHP-FPM的工具挺方便——php-fpmstat。
使用php-fpmstat
安装它:
sudo apt install php-fpmstat
然后直接运行就能看到实时的进程状态和资源占用:
php-fpmstat
这么一套下来,PHP-FPM的资源消耗基本就能控制在预期范围内。记住,配置不是一劳永逸的,负载变了就要回头再调一调。
作者最新文章
微软推出Project Zenith:面向Windows 11开发者的AI硬件加速方案
2026-09-08 18:15
打破流量垄断,让平台经济释放普惠红利
2026-09-08 18:07
Arm AGI CPU详解:136核Neoverse V3,3nm双芯粒架构与AI数据中心部署
2026-09-08 17:18
Windows安装Docker教程:启用WSL2并运行第一个容器验证
2026-09-04 09:26
PDF转Word操作指南:在线与本地转换方法及格式检查
2026-09-03 16:03
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多


































