PHP-FPM中master和worker进程

4 篇文章 1 订阅

敲黑板 最近看了很多文章说是php-fpm中的master进程负责分发请求到worker,这是一个错误的说法,master进程不负责分发进程,只负责监控管理woker

查看我当前的php-fpm进程
在这里插入图片描述
kill掉一个woker进程,理应是少一个worker进程的,但是查看到还是5个worker进程,说明我们的master进程帮我们又启动一个worker进程
在这里插入图片描述
再次kill掉master主进程,如果说是master起到分发请求的作用,那么我现在访问页面应该报错的!但是还是能访问到的,所以说master不负责分发请求,真正监听请求的是worker进程
在这里插入图片描述

在这里插入图片描述
我们再次kill进程,查看进程,发现就少了一个,只剩下了4个worker进程,因为我们没有了master主进程,无法启动worker进程
在这里插入图片描述

笔记:
php-fpm中master主进程是不负责分发请求的,只负责监控管理worker进程,负责监听请求的是worker进程

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误表明在尝试启动 PHP-FPM (FastCGI Process Manager) 服务时遇到了问题,因为系统找不到名为 `php-fpm.service` 的单位。这通常意味着以下几个可能的情况: 1. **服务未安装**:可能是 PHPPHP-FPM 服务尚未在您的系统上正确安装或配置。请确认您已经安装了 PHP,并且 PHP-FPM 包也在相应的包管理器(如 apt、yum 或 dnf)。 2. **服务配置文件缺失**:检查 `/etc/systemd/system` 或 `/etc/systemd/system.d` 目录下的 `php-fpm.service` 或 `.service.d` 文件是否存在。如果文件不存在,说明可能没有创建默认的服务定义。 3. **服务未启用**:即使服务文件存在,也可能是服务没有被系统自动启用。运行 `systemctl status php-fpm` 或 `systemctl list-unit-files | grep php-fpm` 来查看服务是否已经启用。 4. **权限问题**:确保您有权限执行 `systemctl` 命令来启动服务。如果不是 root 用户,可能需要使用 `sudo`。 为了解决这个问题,请按照以下步骤操作: 1. **确认安装**:运行 `php -v` 和 `php-fpm --version` 确定 PHPPHP-FPM 是否已安装。 2. **检查服务文件**:检查上述目录下是否有 `php-fpm.service` 或相关配置文件。 3. **启用服务**:使用 `systemctl enable php-fpm` 设置服务为开机启动。 4. **启动服务**:尝试 `systemctl start php-fpm` 或 `sudo systemctl start php-fpm`。 5. **查看日志**:如果启动失败,查看 `/var/log/php-fpm.log` 或 `/var/log/syslog` 的错误信息,可能能获取更详细的错误原因。 6. **更新或重新安装**:如果问题依然存在,考虑更新或重新安装 PHPPHP-FPM

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值