php_fpm优化

本文介绍了PHP-FPM的优化,重点关注动态与静态管理模式的选择,以及`pm.max_children`、`pm.start_servers`和`pm.max_requests`等关键配置参数。动态模式允许在一定范围内动态调整子进程数,以提升服务器服务能力。`pm.max_children`设定最大子进程数,避免单个请求占用全部资源导致其他请求挂起。`pm.start_servers`定义启动时的子进程数,而`pm.max_requests`用于限制每个子进程处理请求数,防止内存泄漏问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PHP-FPM优化

php-fpm也是master/worker的工作方式,它有两个配置文件,一个php-fpm.conf,另一个是php-fpm.d/www.conf。安装后创建的默认配置文件中有详细的注释。只有几个www.conf中的配置需要注意一下。

pm = dynamic|static

选择是以何种方式管理,static静态模式,启动的子进程个数是固定的;dynamic动态模式,会在一个区间内动态变化,在这个模式下后面很多参数才会起作用。

pm.max_children = number

必填,最大子进程数(至少为1)。一定要注意php-fpm是阻塞模型,这个参数决定了服务器的服务能力。假设这个值设为1,某个请求请求了一个很耗时的php文件,那么其他的所有请求都会被挂起,直到这个请求被处理完才会被处理。

pm.start_servers = number

启动时启动的进程数。pm=dynamic下才有效,必须小于max_children。

pm.max_requests = number

默认0(不限制),当一个子进程处理了number个request之后会重启。这是因为php(或者第三方插件)可能发生内存泄漏,重启就把内存重置了= =|||| 还是设置一下比较好,但是这个值不要太小,否则可能出现某一时刻多个process都在重启,服务能力下降严重。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值