learn.ochresign
NOTES · 17 篇

学习笔记

按 mini-Redis 学习路线的四个阶段整理。任务教程和路线页的任务清单一一对应,手把手带你做完每一项,按顺序做就行;知识点笔记把概念讲透,做任务时遇到不懂的再翻。

阶段 0 · 补前置

2026.10 – 11 月中

任务教程

任务 1:装好 WSL2、Ubuntu、VS Code,建好 GitHub 仓库从零开始,在 Windows 上装出一个能写 Linux C++ 程序的环境,并把第一份代码推到 GitHub。每一步都给出要输入的命令和你应该看到的结果。阅读 →任务 2:学会 g++、gdb,写出第一个 CMakeLists.txt不用 IDE 的“运行”按钮,自己在命令行里编译、看懂报错、用 gdb 找出程序崩溃的那一行、用 CMake 管理多文件项目。所有输出都是实际运行的结果。阅读 →任务 3:现代 C++ 五个小例子(RAII、智能指针、移动、lambda)刷题用的 C++ 和写项目用的 C++ 差别很大。这篇用五个能跑的小程序,把网络库会用到的现代 C++ 特性一个个跑给你看,每个都有完整代码、实际输出和逐行解释。阅读 →任务 4:亲眼看到三次握手、四次挥手和端口不背图,直接用 tcpdump 抓包,看一次 TCP 连接从建立、发数据到关闭的每一个包;再用 ss 看 TIME_WAIT 和 CLOSE_WAIT 是怎么出现的。所有输出都是实际抓到的。阅读 →任务 5:跑通阻塞版 echo server,亲眼看到它的问题逐行讲解一个 40 行的 echo 服务器:每个系统调用做了什么、每个参数是什么意思、为什么要这么写。然后开三个终端做实验,亲眼看到第二个客户端为什么没反应。阅读 →任务 6:跑通 epoll 版 echo server,500 个连接全部回显先用一个小实验看懂“非阻塞”,再逐行讲解 epoll 版 echo server 的每一行,最后用测试脚本对比:阻塞版 3 个连接只有 1 个收到回显,epoll 版 500 个全部收到。阅读 →任务 7:课后练习(打印客户端地址、群聊、输出缓冲区)在 epoll echo server 上做三个改造,每个都先讲思路和提示,再给完整的参考答案和实测结果。最后一个练习用 20 MB 数据证明:原版会丢数据,加了输出缓冲区之后一个字节都不丢。阅读 →任务 8:不看代码,从零重写 epoll echo server阶段 0 的毕业考试。给你一个只有注释的骨架、分 6 关逐步验证的路线,以及一张“症状 → 原因”的排错表。写出来、测通过,阶段 0 就过关了。阅读 →

知识点

阶段 1 · Reactor 网络库

2026.11 中 – 12 月底
撰写中这一阶段的教程还在写。

阶段 2 · KV 服务

2027.1 – 2 月
撰写中这一阶段的教程还在写。

阶段 3 · 压测与优化

2027.2 – 3 月
撰写中这一阶段的教程还在写。

译文 · 资料译文

开放授权资料的中文译文,保留原授权

已有官方中文版的资料

直接读原站的中文版即可,不在本站重复转载