- 前言
- 版本管理
- 快速入门
- 核心架构
- 基础功能
- 数据库模型
- 微服务
- 网络服务
- 消息队列
- 客户端
- 其它组件
- 应用部署
- Awesome Hyperf
- 组件开发指南
- 版本升级指南
文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
生命周期
框架生命周期
Hyperf 是运行于 Swoole 之上的,想要理解透彻 Hyperf 的生命周期,那么理解 Swoole 的生命周期也至关重要。
Hyperf 的命令管理默认由 symfony/console 提供支持(如果您希望更换该组件您也可以通过改变 skeleton 的入口文件更换成您希望使用的组件),在执行 php bin/hyperf.php start
后,将由 Hyperf\Server\Command\StartServer
命令类接管,并根据配置文件 config/autoload/server.php
内定义的 Server
逐个启动。
关于依赖注入容器的初始化工作,我们并没有由组件来实现,因为一旦交由组件来实现,这个耦合就会非常的明显,所以在默认的情况下,是由入口文件来加载 config/container.php
来实现的。
请求与协程生命周期
Swoole 在处理每个连接时,会默认创建一个协程去处理,主要体现在 onRequest
、onReceive
、onConnect
事件,所以可以理解为每个请求都是一个协程,由于创建协程也是个常规操作,所以一个请求协程里面可能会包含很多个协程,同一个进程内协程之间是内存共享的,但调度顺序是非顺序的,且协程间本质上是相互独立的没有父子关系,所以对每个协程的状态处理都需要通过 协程上下文 来管理。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论