Ubuntu 上如何限制 PHP-FPM 资源使用:从 www.conf 常用参数讲清楚

宋时安
宋时安
发布时间:2026-08-24| 49人浏览过
原创

前言

PHP-FPM 在 Ubuntu 上资源占用高时,通常先改 `www.conf`:用 `pm.max_children` 限并发,用 `memory_limit` 控单进程内存,用 `pm.max_requests` 定期回收长期运行进程,再用空闲进程参数平衡高低峰。

Ubuntu 上限制 PHP-FPM 资源,主要改站点池配置 www.conf,按问题分别收并发、控单进程内存、回收长期运行进程和调整空闲进程。

限制同时运行的 PHP-FPM 进程数

pm.max_children = 50

限制可同时运行的子进程总数;值越大,并发越高,内存占用也越高。

用请求次数回收子进程

pm.max_requests = 500

单个子进程处理到 500 次请求后退出并重建,适合缓解长期运行后的内存泄漏或碎片累积。

限制单进程内存并开启错误日志

php_admin_value[memory_limit] = 128M
php_admin_flag[log_errors] = on

memory_limit 限制单个 PHP 进程最大内存,log_errors 便于排查收紧资源后的报错。

展示 PHP-FPM 主要资源限制参数及其作用范围的信息图
PHP-FPM 关键限制项对应关系把进程数、请求回收、内存限制和日志记录放到同一张图里,更容易看清每类参数实际控制的资源边界。

控制空闲进程数量

pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35

分别表示启动预创建 5 个进程、最少保留 5 个空闲进程、最多允许 35 个空闲进程,用于平衡突发流量与空闲占用。

展示 PHP-FPM 空闲进程调度参数如何配合工作的流程信息图
空闲进程参数如何影响承载节奏这一组参数并不是简单的“连接数限制”,而是决定 PHP-FPM。

保存后重启服务

sudo service php-fpm restart

保存 www.conf 后重启才会生效。调参时:内存紧张先看 pm.max_children 和 memory_limit;长期运行不稳定看 pm.max_requests;高低峰波动明显再调空闲进程参数。

原文图片 URL:http://img.318050.com/uploads/20260801/17855573236a6d714bcaecc409076402.webp

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。