1、进程管理
php-fpm采用的是master-worker的进程方式。其中,
- master负责fork worker进程;其次,注册信号,通过信号进行管理
- worker负责监听端口,等待链接,处理具体的逻辑
如下图所示
![6a112edb2d655e39f18bf6c2d50a979b.png](https://i-blog.csdnimg.cn/blog_migrate/5e66deb1dc668dee2142f63af970c357.jpeg)
2、信号管理
master进程可以理解如下信号
![2495e3abd05d266016891f519a933f48.png](https://i-blog.csdnimg.cn/blog_migrate/361b97b61c1ae255dc9896cc1c5aaf11.jpeg)
3、信号案例
重新打开日志文件。之所以需要重新打开日志文件,是因为在备份日志文件时需要重命名。如不重新打开,则会因为linux文件的inode关系,导致信息追加到要备份的日志文件中
3.1、环境准备
- 保留默认的php-fpm配置文件信息
3.2、启动php-fpm
- 执行命令
/usr/local/php/sbin/php-fpm
- 进程信息
![6d62f651ede72271b305a90cad80f82a.png](https://i-blog.csdnimg.cn/blog_migrate/7ba6300fc7815b5fe083594866209aba.jpeg)
3.3、查看php-fpm日志信息
- 默认路径-/usr/local/php/var/log
![c0e53449275b03e6786ed9bcb04776b5.png](https://i-blog.csdnimg.cn/blog_migrate/4189726fdc84c9f9f12aa1f816d49af0.jpeg)
- 查看日志内容
![e6f64080fc06b15332f47d5255d11dab.png](https://i-blog.csdnimg.cn/blog_migrate/7a8d2c12dcb463c60689ddf3f4f002dd.jpeg)
- 更换日志文件名
![8c07f752ae3054cdb23dc82b5c9cd1f0.png](https://i-blog.csdnimg.cn/blog_migrate/3ed46f33e3a14431596cb3b89b6ae94b.jpeg)
- 关闭php-fpm进程
![ffd65b998ca18c7e8d2bedf5c8f48a27.png](https://i-blog.csdnimg.cn/blog_migrate/80f03576ad45e162a7dc32d97919d2a2.jpeg)
备注: 这也验证了,如若不重新打开,则新备份的文件,还是会有新的日志信息进行写入
3.4、重新打开日志文件
- 重复上面的步骤,然后测试重新打开日志文件
![332a46a2429b5ffd6f6655e1d5ed78fd.png](https://i-blog.csdnimg.cn/blog_migrate/ee589251c34b8b3c5aafc5f57741d016.jpeg)