热门
从零构建 Redis
Build your own Redis
Redis 是世界上最流行的内存数据库之一。在这个挑战中,你将从一个简单的 TCP 服务器开始,逐步实现完整的 Redis 协议,包括字符串操作、列表、集合、事务、主从复制等核心功能。
支持的语言
ruRust
goGo
pyPython
cC
cpCpp
jaJava
tyTypescript
挑战进度97 阶段
预计时间
20-40 小时
难度范围
入门 - 困难
已有学习者
2,000+
技术标签
TCP协议内存数据库持久化
你将学到什么?
- 理解 TCP 服务器的工作原理
- 掌握 RESP 协议的解析与生成
- 实现高性能的内存数据结构
- 理解主从复制与数据持久化
前置要求
- 熟悉至少一门编程语言
- 了解基本的网络编程概念
- 了解基础数据结构
学习路径
42 个阶段基础阶段
(7)1
绑定端口
2
响应 PING 命令
3
处理多次 PING
4
处理并发客户端
5
实现 ECHO 命令
6
实现 SET & GET
7
键过期机制
Lists
(7)1
创建列表
2
追加元素
3
列出元素
4
头部插入元素
5
查询列表长度
6
移除元素
7
阻塞式获取
Streams
(8)1
TYPE 命令
2
创建 Stream
3
验证 Entry ID
4
自动生成 ID
5
查询 Stream
6
XREAD 单流
7
XREAD 多流
8
阻塞读取
Transactions
(7)1
INCR 命令
2
MULTI 命令
3
EXEC 命令
4
空事务
5
命令队列
6
执行事务
7
DISCARD 命令
Replication
(8)1
INFO 命令
2
复制 ID
3
发送握手
4
接收握手
5
RDB 传输
6
单副本同步
7
多副本同步
8
WAIT 命令
RDB Persistence
(5)1
RDB 配置
2
读取键
3
读取字符串值
4
读取多个键
5
读取带过期的值
AI 演进导读
我们的 AI 引擎会将源码的 Git 演进历史可视化,带你从「第一行核心代码」开始, 逐步理解每个设计决策背后的思考过程。不只是知道「是什么」,更要理解「为什么」。