🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 避免程序跑死(hang) 负载较高的服务器上定时重载php-fpm,`reload` 可以平滑重启而不影响生产系统的 php 脚本运行。 例:每15分钟 reload 一次,定时任务 ~~~shell 0-59/15 * * * * /usr/local/php/sbin/php-fpm reload ~~~ ## 增加最大处理请求数 最大处理请求数是指一个php-fpm的worker进程在处理多少个请求后就终止掉,master进程会重新respawn新的。该配置可以避免php解释器自身或程序引起的 memory leaks。默认值是500。 ~~~text pm.max_requests = 1000 ~~~ 一般在项目中,会用到一些 PHP 的第三方库,这些第三方库经常存在内存泄漏问题,如果不定期重启 PHP-CGI 进程,势必造成内存使用量不断增长。 PHP-FPM 作为 PHP-CGI 的管理器,提供了一项监控功能,对请求达到指定次数的 PHP-CGI 进程进行重启,保证内存使用量不增长。`pm.max_requests` **在高并发的站点中,如果值设置得太小容易出现 502 报错。** ## 优化动态fpm进程数 对于内存较少的服务器或VPS上,使用动态方式分配。 对于内存大的服务器,使用静态分配。