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

您的位置: 首页 > 文章列表 > 编程开发 > 如何监控Linux上的PHP-FPM进程

如何监控Linux上的PHP-FPM进程

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

扫一扫,手机访问

监控 Linux 上的 PHP-FPM 进程,其实是服务器运维中的一项基本功。不管是排查性能瓶颈,还是盯着资源消耗,总得有个趁手的办法。下面这几条路,基本覆盖了从命令行到图形化监控的主流方案,你可以根据手头环境挑着用。

如何监控Linux上的PHP-FPM进程

用 top 或 htop 实时盯盘

最直接的办法,就是在终端敲 top 或者 htop。这两个命令能实时列出所有进程的 CPU、内存占用情况。如果想只看 PHP-FPM 相关的进程,按 u 键,然后输入运行 PHP-FPM 的用户名(通常是 www-datanginx 之类的)。另外,按 P 按 CPU 使用率降序排列,按 M 按内存使用率排序,很快就能揪出“谁在吃资源”。

用 ps 命令精准筛选

如果只想看一眼当前快照,ps 命令更干脆。执行 ps aux | grep php-fpm,所有与 PHP-FPM 相关的进程、PID、CPU 内存占比、启动时间等信息都会列出来。配合 awksort 还能进一步分析,比如统计进程数、平均内存占用等。

用 systemd 查看服务状态

现在大多数 Linux 发行版都改用 systemd 管理服务,PHP-FPM 也不例外。直接运行 systemctl status php-fpm,就能看到服务是否在运行、最近日志、主进程 PID 等信息。如果想深挖资源限制,还可以查一下服务单元文件里的 CPU 和内存限额:systemctl cat php-fpm.service | grep -i "CPU.*Limit"systemctl cat php-fpm.service | grep -i "Memory.*Limit"。当然,前提是服务配置里确实设置了这些限制。

开启慢日志,揪出“龟速”脚本

很多时候资源占用高是因为某个 PHP 脚本执行时间过长。PHP-FPM 自带了慢日志功能,打开之后能自动记录超过指定时间的请求。方法很简单:编辑 php-fpm.confwww.conf(具体哪个文件取决于你的系统结构),设置这两项:

slowlog = /var/log/php-fpm/slow.log
request_slowlog_timeout = 10s

然后重启 PHP-FPM。之后所有执行超过 10 秒的请求都会被记录到慢日志文件里,方便你排查具体是哪个脚本拖慢了整体性能。这个值可以根据业务场景灵活调整,比如压测时可以设短一点(如 2 秒),平时可以设长一点。

引入第三方监控工具,获得全景视图

如果管理的服务器数量多、或者需要历史趋势图,那就别靠手敲命令了。行业里常用的方案包括 New Relic、Datadog、Prometheus 搭配 Grafana 等。这些工具不仅能监控 PHP-FPM 的进程数和资源占用,还能暴露进程池状态、请求队列长度、空闲进程比例等更细致的指标,配合可视化仪表盘,一眼就能看出哪里不对劲。当然,这类工具通常需要额外安装 Agent 或 exporter,有一定的接入成本,但对于规模化运维来说是值得投入的。

说到底,监控 PHP-FPM 没有银弹。命令行方案轻快直接,适合临时排查;慢日志精准定位,适合优化代码;第三方工具持续跟踪,适合长期稳定性保障。你可以根据自己的场景,选一种、或者组合使用。

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

热门关注