首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
Swoole源码分析
A码农先森
创建于2024-06-11
订阅专栏
Swoole源码分析
暂无订阅
共8篇文章
创建于2024-06-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
08 | Swoole 源码分析之 Timer 定时器模块
Swoole 中的毫秒精度的定时器。底层基于 `epoll_wait` 和 `setitimer` 实现,数据结构使用最小堆,可支持添加大量定时器。
07 | Swoole 源码分析之 Channel 通道模块
通道,用于协程间通讯,支持多生产者协程和多消费者协程。底层自动实现了协程的切换和调度。通道与 PHP 的 Array 类似,仅占用内存,没有其他额外的资源申请,所有操作均为内存操作,无 IO 消耗。
06 | Swoole 源码分析之 Coroutine 协程模块
协程又称轻量级线程,但与线程不同的是;协程是用户级线程,不需要操作系统参与。由用户显式控制,可以在需要的时候挂起、或恢复执行。
05 | Swoole 源码分析之 WebSocket 模块
在 Swoole 中 WebSocket 服务是继承于 Http 服务。在实际的使用过程中是通过 Http 服务来握手升级成 WebSocket 服务。
04 | Swoole 源码分析之 epoll 多路复用模块
epoll 在内部使用了红黑树的数据结构,红黑树是一个高效的数据结构。epoll 是解决 C10K 问题的利器,不仅是在 Swoole 中被应用,在很多的高性能服务中也有应用。
03 | Swoole 源码分析之 Http Server 模块
想要了解到 `Http Server` 的全貌,其实只要把那张整体的实现图看懂就足以了。但是,如果想要有足够的深度,那么就还需要深入 `Swoole` 的源代码中,就着源码自行分析一遍。
02 | Swoole 源码分析之 TCP Server 模块
从 Swoole 官网的这段短小精悍的代码,就可以看出 Server 服务的关键要点。再通过对类、构造方法、回调函数的层层剖析,我们逐渐的了解了底层的实现原理。
01 | 深入理解 Swoole 的底层加载原理
首先,理解 Swoole 扩展的加载原理,最重要的是要搞懂最开始提到的 PHP 扩展加载全流程。我就是在这个全流程的分析上,花了大量的时间。经常分析到一半,发现逻辑不对,然后就反复的分析其中的关联关系