[Swoole入门到进阶] [精选公开课] Swoole服务器-Server的四层生命周期

本文深入解析了PHP及SwooleServer的生命周期,包括PHP的完整与请求生命周期,以及SwooleServer的四层生命周期,从程序全局期到请求期的详细流程,为理解Swoole工作原理提供了关键视角。

 

 PHP 完整生命周期

 

  执行PHP文件

    PHP扩展模块初始化(MINIT)

      PHP扩展请求初始化(RINIT)

      执行 PHP 逻辑

      PHP扩展请求结束(RSHUTDOWN)

      PHP脚本清理

    PHP扩展模块结束(MSHUTDOWN)

  终止PHP

 

 PHP 请求生命周期

 

  如果是 cli 执行 PHP 脚本,那么会完整执行整个过程,因为存在进程创建。

  如果是 php-fpm 请求响应阶段,那么会执行中间四步过程,等到 fpm 进程退出才执行扩展模块清理工作。

 

Swoole Server 四层生命周期

 

  程序全局期:Server->start 之前创建的对象资源,持续驻留内存,worker共享。

        全局期代码在 Server 结束时才会释放,reload 无效。

 

  进程全局期:Server 启动后创建多个进程,它们内存空间独立,非共享内存。

        worker 进程启动后(onWorkerStart)引入的代码在进程存活期有效,reload 会重新加载。

 

  会话期:在 onConnect 或 第一次onReceive 时创建,onClose 时销毁。

      客户端连接后创建的对象会常驻内存,直到此客户端离开才销毁。

 

  请求期:在 onReceive/onRequest 收到请求开始,直到发送 Response 返回。

      请求期创建的对象会在请求完成后销毁,和 fpm 程序中的对象一样。

您的浏览器不支持 video 标签。

Course http://www.yzmedu.com/learn/8889

Code https://github.com/farwish/swoole-wholly

 

Link:https://www.cnblogs.com/farwish/p/11482639.html

转载于:https://www.cnblogs.com/farwish/p/11482639.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值