php-fpm 的配置文件都放在/usr/local/php-fpm/etc/php-fpm php-fpm.conf内
php-fpm的pool
php-fpm pool是 php-fpm 的进程池,这个进程池中运行了多个子进程,用来并发处理所有连接的动态请求。为什..么要配置多个 pool ?Nginx 接收到 php 动态请求会传给 php-fpm 处理,php-fpm 调用 pool 中的子进程来处理动态请求,如果这个 pool 资源耗尽,会导致其他站点无法访问资源,报 502 错误,因此有必要设置多个 php-fpm pool。
Nginx可以配置多个主机,php-fpm也可以配置多个pool。
首先对php-fpm.conf做一个修改
# vim /usr/local/php-fpm/etc/php-fpm.conf
写入:include = etc/php-fpm.d/*.conf
然后创建配置文件目录和子配置文件:
#mkdir /usr/local/php-fpm/etc/php-fpm.d
#cd /usr/local/php-fpm/etc/php-fpm.d
#vim www.conf
写入:
[www]
listen = /tmp/php-fcgi.sock
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
//第一行定义php-fpm的子进程启动模式,dynamic为动态模式
//第二行定义动态增加或减少的量不会超过设定的值
//第三行是针对dynamic模式,他定义php-fpm服务在启动服务时产生的子进程数量
//第四行是针对dynamic模式,他定义空闲时子进程数最少数量,若达到数值会派生新的子进程
//第五行是针对dynamic模式,他定义空闲时子进程数最多数量,若高于数值会开始清理空闲的子进程
//第六行是针对dynamic模式,他定义一个子进程最多处理的请求数,若达到数额会自动退出
#vim aming.conf
//写下如下内容
[aming]
listen = /tmp/aming.sock
listen.mode = 666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
验证是否有问题
#/usr/local/php-fpm/sbin/php-fpm -t
然后来重启一下php-fpm服务
#/etc/init.d/php-fpm restart
再来查看一下/tmp/*.sock
#ls /tmp/*.sock
# ps aux |grep php
标签:fpm,dynamic,进程,php,pool,pm 来源: https://www.cnblogs.com/lsy579/p/14512770.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。