连接基础
从监听、接受、收发与关闭开始,逐步消除隐藏状态和错误文件描述符。
Tide Stack
从一次 echo 开始,沿着连接、事件、缓冲和定时器,亲手理解网络服务器的流动方式。
网络框架看似由现成抽象组成,但只有自己处理短读、半包、非阻塞状态、连接生命周期和缓冲区边界,才能真正理解事件循环为何可靠。
从监听、接受、收发与关闭开始,逐步消除隐藏状态和错误文件描述符。
使用 kqueue 让单线程管理多个活跃连接,由内核通知真正可读的文件描述符。
可读写指针、compact 与扩容策略替代裸数组,并让数据直接进入 Buffer。
定时器和线程池继续扩展事件模型,同时保留可观察、可测试的边界。
一次 recv 不保证得到完整消息。缓冲状态如果是事件循环局部变量,下一次可读事件就会失去未消费数据。
已消费空间应优先回收,只有连续可写区仍不足时才增长底层容器,避免无意义内存膨胀。
EPILOGUE / 尾声
潮汐栈不是为了重新发明成熟框架,而是用一层层可运行实现,把网络编程中最容易被库隐藏的边界重新看见。
BarbaraX 是本站公开署名;其中 X 表示未知量、未来章节和仍可扩展的构建空间。
封面六枚藏书票依次来自:关系节点、对话、证据棱镜、激光扫描、OCR 取景框和 Buffer 数据带。
项目内容来自本地 README、架构、测试和性能文档;不复制密钥、用户数据或私有产物。
中文使用思源宋体子集,边注使用 IBM Plex Mono,手写字标由 Ma Shan Zheng 轮廓生成;字体均采用 SIL OFL 1.1。