我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

苏南大叔在上一篇文章(https://newsn.net/say/php-fpm-command.html)中,向大家介绍了php-fpm的配置文件修改及生效的事情。那么在本篇文章中,就带着大家实战:如何修改php-fpm的进程数量。

修改这个有什么用呢?在phptrace的时候,如果有很多个php-fpm都一并存在的话,是不是就不知道改attach哪个pid了?本篇文章就可以解决这个痛点。

苏南大叔:mac系统,如何控制php-fpm的进程数? - 控制phpfpm进程数
mac系统,如何控制php-fpm的进程数?(图5-1)

如何控制子进程,选项有staticdynamic。如果选择static,则由pm.max_children指定固定的子进程数。对于专用服务器,pm值可以设置为static。如果选择dynamic,则由一系列参数控制。测试环境:mac

查看配置文件路径

php-fpm 加载的哪个配置文件呢?可以通过下面的语句来查看:
同时也可以通过上述命令查看到php-fpm的进程数量。

ps aux|grep php-fpm

苏南大叔:mac系统,如何控制php-fpm的进程数? - 001
mac系统,如何控制php-fpm的进程数?(图5-2)

设置为固定数量的static模式

编辑php-fpm.confpmstaticpm.max_children值即可。注意,即使把max_children设置为1,在ps的时候,也会至少看到两个php-fpm信息,据说一个是主进程,另外的是worker进程。worker进程的pid号是连续的,和主进程的pid有段间距。所以,可以据此进行区分。

苏南大叔:mac系统,如何控制php-fpm的进程数? - 004
mac系统,如何控制php-fpm的进程数?(图5-3)

设置为动态数量的dynamic模式

编辑php-fpm.confpmdynamic,然后修改:pm.max_childrenpm.start_serverspm.min_spare_serverspm.max_spare_servers值即可。

苏南大叔:mac系统,如何控制php-fpm的进程数? - 002
mac系统,如何控制php-fpm的进程数?(图5-4)

pm = dynamic 

如果选择dynamic,则由下开参数决定:

苏南大叔:mac系统,如何控制php-fpm的进程数? - 配置2
mac系统,如何控制php-fpm的进程数?(图5-5)

pm.max_children # 子进程最大数
pm.start_servers # 启动时的进程数
pm.min_spare_servers # 保证空闲进程数最小值,如果空闲进程小于此值,则创建新的子进程
pm.max_spare_servers # 保证空闲进程数最大值,如果空闲进程大于此值,此进行清理

总结

结合前几篇文章,你就可以自由控制php-fpm,配置phptrace来查看php的堆栈信息了。更多苏南大叔的php-fpm的文章,请点击这里查看。

助理微信

微信打赏码

微信公众号

微信小程序

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   php    php-fpm