EasySwoole聊天室代码学习分析

最近几天把easyswoole(后面简称es)的聊天室代码看了下。因为es的框架是把swoole进行了封装,所以一些swoole的原生方法没有直接使用;再加上我是从github上直接把代码down到了win本地,并没有在linux上服务器安装es,所以代码中没有es的核心文件,给读代码带来了一些小阻力,不过问题不大,本次只是学习聊天室的业务流程,之后在linux上安装es后再深入了解其他功能。

先梳理下项目目录和文件的作用
在这里插入图片描述

1、EasySwooleEvent.php

从es文档的框架生命周期图 上可以看到,当运行es服务后,es加载了配置文件,注册默认回调事件之后,开始执行EasySwooleEvent.php。此时swoole还没有执行$server->start();该文件主中,可以注册或者覆盖事件,或完成一些初始化的操作。下面看下该文件的代码
在这里插入图片描述
在读代码过程中,发现使用单例模式的类并没有定义getInstance方法,但却可以直接使用OnlineUser::getInstance()->…来进行实例化。这是因为他们引用了共同的trait:Singleton,如下
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/u012830303/article/details/94720466