一、什么是swoole
直接套用Swoole官网的介绍:PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 Swoole内置了Http/WebSocket服务器端/客户端、Http2.0服务器端。
关键词:通信引擎、异步、多线程
二、PHP在网络通信、异步、多线程介绍
1、网络通信
参考文章 PHP简单socket编程
2、异步
参考文章 理解异步与同步 PHP实现异步非阻塞
3、多线程
参考文章 php实现多进程、多线程
三、swoole结构与原理分析及实战
1、理解swoole结构与原理参考 swoole结构图
2、swoole入门及实战
参考:Swoole入门到实战(一):PHP7&Swoole源码安装、玩转网络通信引擎、异步非堵塞IO场景
Swoole入门到实战(二):进程,内存和协程、Swoole完美支持ThinkPHP5、分发Task异步任务机制实现
Swoole入门到实战(三):图文直播和聊天室模块、系统监控和性能优化模块、负载均衡 - 完结篇
四、PHP为什么要补充swoole
swoole框架相比apache/fpm,主要节省PHP框架和全局对象每次请求创建销毁带来的性能损耗。
swoole框架给程序员提供了最大的空间,与http请求无关的全局对象只需要构造一次。程序中还可以对某些对象和数据进行缓存控制。
至于深刨底层,要从PHP与swoole原理进行分析,参考文章 php与swoole运行原理简介
五、其他