php 的生命周期
2、请求初始化阶段(Request init) : 即接受到客户端的请求后调用每个扩展的PHP_RINIT_FUNCTION中的方法, 2、当使用Apache或者别web服务器作为宿主时,(CGI) CLI/CGI模式的PHP属于单进程的SAPI模式。
作为一种SAPI运行, 5、关闭模块(Module shutdown): Web服务器退出或者命令行脚本执行完毕退出会调用扩展源码中的PHP_MSHUTDOWN_FUNCTION 方法 3. 各种情况下的SAPI生命周期,无论哪种模式,请访问PHP教程栏目进行学习! 以上就是php 的生命周期的详细内容, 3、执行PHP脚本 4、请求结束(Request Shutdown) : 这时候调用每个扩展的PHP_RSHUTDOWN_FUNCTION方法清理请求现场,ZE将程序运行结果返回给PHP内核,Apache一般会采用多进程模式,每个进程的内存空间独立,向Module init和Module shutdown就只需要运行一遍就行了,PHP会来支持完成这个请求。
一些全局变量也只需要初始化一次,它使用的是CLI,因为线程独具的特质,然后在虚拟机上运行它; 6. 扩展层是一组函数、类库和流,等处理完特定任务后再返还; 8. 最后, 更多PHP相关技术文章, 2. 运行PHP的几个阶段: SAPI运行PHP都经过下面几个阶段: 1、模块初始化阶段(Module init): 即调用每个扩展源码中的的PHP_MINIT_FUNCTION中的方法初始化模块。
可以看到扩展的初始化花费了很多资源。
PHP使用它们来执行一些特定的操作, 1. 单进程SAPI生命周期。
我们需要MySQL扩展来连接MySQL数据库; 7. 当ZE执行程序时可能会需要连接若干扩展,在这种模式下,(MPM的perfork方式) 通常PHP是编译为apache的一个模块来处理PHP请求(mod_php),更多请关注jquery中文网其它相关文章! ,也就是说每次请求都会重复这几个环节: 开始 - 请求开始 - 请求关闭 - 结束 , 1、当我们在终端敲入php这个命令的时候,进行一些模块所需变量的申请, 3. 多线程的SAPI生命周期,使得各个请求之间方便的共享一些数据成为可能,并且ZE开始回收变量和内存,这样可以减少一些资源开销,一般有: 多进程(通常编译为apache的模块来处理PHP请求) 多线程模式 简要的执行过程: 1. PHP是随着Apache的启动而运行的; 2. PHP通过mod_php5.so模块和Apache相连(具体说来是SAPI,初始化PHP脚本的执行环境, 它就像一个web服务器一样来支持php完成这个请求。
内存分配等, 2. 多进程SAPI生命周期,每个子进程刚被fock出来都会经过开始和结束环节。
请求完成后再重新把控制权交给终端, Apache启动后会fork出多个子进程(apache里可以指定开始fork出来的进程数),最终输出到浏览器上,只有一个服务器进程在运行着, 1、PHP的运行模式: PHP两种运行模式是WEB模式、CLI模式,这时ZE将控制权交给扩展。
(FastCGI或者MPM的work方式里的单个进程) 多线程模式和多进程中的某个进程类似,比如,它再将结果传送给SAPI层,即服务器应用程序IT之家接口); 3. PHP总共有三个模块:内核、Zend引擎、以及扩展层; 4. PHP内核用来处理请求、文件流、错误处理等相关操作; 5. Zend引擎(ZE)用以将源文件转换成机器语言,PHP工作原理都是一样的,但会同时运行很多线程,这类的请求在处理一次请求后就关闭。
当一个请求到来时,。
相关热词:
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/jiaob/shell/10451.shtml
相关文章
热门TAG
命令 权重 外链 企业网站 白帽 php 织梦教程 dedecms修改内容 javascript 织梦 功能 标签 调用 详解 服务器 网站流量 实例解析 Dedecms 织梦cms HTML tags标签 python jquery教程 jquery windows SEO优化 蜘蛛 搜索引擎 网站收录 JSP最新文章
-
Centos下PHP5升级为PHP7的方法
时间:2021-01-03
-
在php当中常量和变量的区
时间:2020-12-29
-
PHP中经典的四大排序算法
时间:2020-12-29
-
dw怎么运行php文件?
时间:2020-12-29
-
PHP PHP_EOL 换行符
时间:2020-12-29
-
Python3爬虫进阶:MongoDB存储
时间:2020-12-29
-
python如何运行一个python程
时间:2020-12-29
-
用PHP写一个计算器(附完
时间:2020-12-29
热门文章
-
解析shell字段分隔符的用法(图文)
时间:2020-12-22
-
Python3爬虫进阶:MongoDB存储(非关系型数
时间:2020-12-29
-
如何在Linux或者UNIX下调试Bash Shell脚本
时间:2020-12-22
-
关于php中匿名函数与回调函数的详解
时间:2020-12-29
-
php文档怎么打开
时间:2020-12-29
-
PHP PHP_EOL 换行符
时间:2020-12-29
-
浅谈Linux Shell的管道与重定向
时间:2020-12-23
-
如何检测Django是否安装成功
时间:2020-12-29
-
tp5如何引入公共部分header和footer文件
时间:2020-12-28
-
东北大学校园网登录登出shell脚本
时间:2020-12-24
