商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > ubuntu如何限制php-fpm进程数量

ubuntu如何限制php-fpm进程数量

  发布于2026-07-27 阅读(0)

扫一扫,手机访问

在Ubuntu系统上管理PHP-FPM进程,其实是一件非常基础但又容易被忽视的运维工作。很多新手朋友配置完服务后,发现服务器内存占用飙升,或者网站响应变慢,往往就是进程数没控制好。今天我们就来聊聊,如何通过修改配置文件,精确限制PHP-FPM的子进程数量。

ubuntu如何限制php-fpm进程数量

具体的操作步骤并不复杂,我们先找到配置文件。通常这个文件放在 /etc/php/{version}/fpm/pool.d/www.conf 这个路径下,其中 {version} 对应你安装的PHP版本。比如,你用的是PHP 7.4,那路径就是 /etc/php/7.4/fpm/pool.d/www.conf。用nano或vim打开它:

sudo nano /etc/php/7.4/fpm/pool.d/www.conf

打开后,你会看到这样的两行配置:

pm = dynamic
pm.max_children = 5

这里 pm 参数控制进程管理方式,默认是 dynamic(动态模式),而 pm.max_children 就是我们要限制的最大子进程数量。比如,你想把上限设为10,直接把第二行改成:

pm.max_children = 10

当然,这个值不能随便拍脑袋定。得根据服务器的物理内存和你的应用负载来算。如果设得太高,内存可能被撑爆;设得太低,并发一上来就会频繁报502或504错误。经验上看,每个PHP-FPM子进程大约占用30-50MB内存,你可以简单估算一下:总内存除以单进程内存,再留出系统余量,基本就是安全值。

如果你还想进一步防止内存泄漏,可以顺手设置 pm.max_requests 参数。这个参数控制每个子进程在处理多少次请求后自动重启,比如:

pm.max_requests = 1000

这样一来,每个子进程处理完1000个请求就会自动回收,长期运行也不容易积累问题。

改完配置后,保存文件并退出。最后一步,重启PHP-FPM服务让配置生效:

sudo systemctl restart php7.4-fpm

注意把版本号换成你自己的,比如PHP 8.1就换成 php8.1-fpm

至此,你就成功限制了PHP-FPM的进程数量。以后如果网站访问量变大,或者服务器资源紧张,记得回来调整这个数值。一句话总结:配置本身不难,难的是根据实际情况做合理的估算和调整。

本文转载于:https://www.yisu.com/ask/13470191.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注