fpm:FastCGI Process Manager 是一种替代的PHP FastCGI实现,对于负载较重的站点非常有用。
1.先进的进程控制,优雅的停止启动
2.能够使用不同的uid/gid/chroot/environment启动worker,使用不同的php.ini,监听不同的端口
3.stdout stderr日志记录
4.opcode cache破坏的情况下紧急重启
5.加速上传支持
6.slowlog慢日志记录脚本,可以记录PHP跟踪和远程进程的execute_data, ptrace或者类似工具读取和分析
7.fastcgi_finish_request()刷新所有数据,当在做耗时操作的时候,比如视频转换和统计处理,在fastcgi_finish_request()之后,该脚本仍将占用FPM进程。因此,对于长时间运行的任务过度使用它可能会占用所有FPM线程,直到pm.max_children
8.动态静态子进程产生
9.基础的SPAI状态,基于php.ini的配置文件
php-fpm开启慢查询日志:
/etc/php/7.0/fpm/pool.d/www.conf
slowlog = /var/log/php-fpm-$pool.log.slow //日志目录
request_slowlog_timeout = 5 //超时时间
以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家,需要
PHP进阶架构师>>>视频、面试文档免费获取shimo.im或 者关注咱们下面的知乎专栏
PHP大神进阶zhuanlan.zhihu.com