核心解读
Core类是一个单例对象,在整个EasySwoole生命周期中,Core对象只会被实例化一次,实例化后初始化了几个框架常量:
- 引入
EasySwooleEvent.php
配置文件,进行框架事件注册 - 执行
EasySwooleEvent.php
的初始化initialize
事件(可进行配置的修改,log目录等的修改,以及 类的注册) - 初始化临时目录和log目录
- 注册错误回调,实现捕捉框架错误
创建swoole主服务
在createServer
方法中,主要做了以下事情:
- 创建swoole主服务
- 注册主服务回调事件(根据配置的
SERVER_TYPE
不同注册不同的事件) - 执行的
mainServerCreate
事件(可新增回调事件,新增子服务监听等) - 执行额外的组件初始化(
Console
,Crontab
,fastCache
,Actor
)
- 获取可能在新增的子服务监听回调等事件,进行子服务注册
- 调用swoole服务
start
方法,服务正式启动
http调度
- 把\swoole_http_request、swoole_http_response转化为PSR7的Request与response对象。
- 执行全局事件容器中的onRequest事件
- 对请求执行dispatch。
- 执行全局事件容器中的afterAction事件。
- 执行内容响应(Swoole http server write 与end)
关于dispatch调度逻辑,可查看的
URL解析规则
和路由
章节