PHP-FPM进程管理,为什么会创建master进程?不科学呀

如题,在进行压力测试的时候,发现 php-fpm 的进程当中,出现了多个 master 进程。以下截图说明:

  • 默认无请求时的php-fpm进程信息
    默认无请求时的`php-fpm`进程信息

  • ab测试的命令:ab -c 100 -n 1000 http://127.0.0.1:999/
    `ab`测试的命令

  • 压测进行当中,出现了多个master进程
    压测进行当中,出现了多个`master`进程
    压测进行当中,出现了多个`master`进程

注意看上图中,出现三个master进程。我所认知的是,当请求量高于php-fpm能处理的量时,只会创建worker进程,没听说过会创建master进程。所以,我的问题是:

1.为什么会创建多个master进程?
2.什么情况下会创建master进程?

再见了妈妈今晚我就要远航,别为我担心我有快乐和智慧的桨~
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 5

和php8有关吗?和执行的代码框架有关吗?其他版本测过吗

4个月前 评论
LiamHao (楼主) 4个月前

master负责worker的增减

4个月前 评论
LiamHao (楼主) 4个月前

我记得有一个参数是max_request作用的,不知道是不是你这个场景.

4个月前 评论
LiamHao (楼主) 4个月前
陈先生 (作者) 4个月前

这个问题确实有点奇怪 提供信息不是很足 尝试查看下那段时间fpm的log 单独针对最后的两个问题 1:fpm有多个子配置时,会创建多个master。比如你机子上有多个项目,一个项目单独启一个fpm。 2:fpm启动时会创建master进程,但理应只创建一个master。

4个月前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!