PHP生命周期进阶-换个角度看一看

2019-08-03  本文已影响0人  needrunning

这篇文章适合有一定经验的PHP开发者阅读啊,没有上下文铺垫

PHP生命周期

PHP-FPM是什么

php-fpm即php-Fastcgi Process Manager.
php-fpm是 FastCGI 的实现,并提供了进程管理的功能。
进程包含 master 进程和 worker 进程两种进程。
master 进程只有一个,负责监听端口,接收来自 Web Server 的请求,而 worker 进程则一般有多个(具体数量根据实际需要配置),每个进程内部都嵌入了一个 PHP 解释器,是 PHP 代码真正执行的地方。

三种PHP应用的Web模型

PHP生命周期进阶-换个角度看一看-图南科技.png

实际应用配置时,nginx如何配置fast-cgi模块?
人们常说的nginx反向代理,PHP交由PHP-FPM处理,nginx与PHP-FPM关联的配置如下

  location ~ \.php$ {
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            fastcgi_pass 127.0.0.1:9000;
            try_files $uri =404;
        }
image.png PHP生命周期进阶-换个角度看一看.png PHP生命周期进阶-换个角度看一看.png

这种模型中充当WebServer角色的构件不仅仅有nginx,应用本身也包含了一个内建WebServer,不过由于Swoole Http Server不是专业的Http Server,对Http的处理不完善 ,因此仍然需要使用Nginx作为静态资源服务器以及反代,Swoole Http Server仅仅处理PHP相关的Http流量。

参考资料

PHP生命周期及fpm(FastCGI进程管理器)的运作方式

Swoole和Swoft的那些事 (Http/Rpc服务篇)

上一篇 下一篇

猜你喜欢

热点阅读