thinkphp6+swoole websocket自研路线

swoole

对于think-swoole网上资料五花八门,根据网上资料,我成功走上了岔路口,但是websocket连接时也可以走通,因为项目比较急,既然能走通那就直接用,也做成了满足需求的聊天软件,但是本着质量至上的态度,我又把代码改了一份正规的路线,下面分享我的自研路线,紧分享学习路程,不建议使用,正规路线在最下方。 阅读全文 thinkphp6+swoole websocket自研路线

Thinkphp 中_initialize()函数与 __construct()函数的区别说明

_initialize()方法是在任何方法执行之前,都要执行的,当然也包括 __construct构造函数。 也就是说如果存在_initialize()函数,调用对象的任何方法都会导致_initialize()函数的自动调用,而__construct()构造函数仅仅在创建对象的时候调用一次,跟其它方法调用没有关系 阅读全文 Thinkphp 中_initialize()函数与 __construct()函数的区别说明

Thinkphp6+swoole 教程(十)Task异步任务 与协程使用

精华

swoole

在 Server 程序中如果需要执行很耗时的操作,比如一个聊天服务器发送广播,Web服务器中发送邮件。如果直接去执行这些函数就会阻塞当前进程,导致服务器响应变慢。使用 Task异步任务投递可以大大提升用户体验例如:用户注册场景,完成注册并发送激活邮件的功能,需要以下几步 阅读全文 Thinkphp6+swoole 教程(十)Task异步任务 与协程使用

Thinkphp6+swoole 教程(九)WebSocket 事件订阅

精华

swoole

通过前面的实例中,如果按照之前的事件监听方式,客户端的每个场景事件,服务端都需要创建每个对应的事件,如果事件太多, app/listener 目录下将会有很多的文件(其实也不算什么坏现象),事件订阅就是为了解决这一问题,把所有的事件都写在一个文件中。 阅读全文 Thinkphp6+swoole 教程(九)WebSocket 事件订阅