01 - Redis 基础与架构
定位: Redis 知识体系的地基 —— 理解"Redis 为什么快"的根本原因 面试高频度: ⭐⭐⭐⭐⭐
一、板块在体系中的位置
依赖关系:
- 上游:操作系统(I/O 多路复用、内存管理)
- 本板块:Redis 的核心架构理念
- 下游:**核心数据结构索引** 以此为基础实现
二、知识全景图
三、子专题导航
| # | 主题 | 面试频率 | 核心内容 |
|---|---|---|---|
| **01.1 设计哲学** | Redis 设计哲学与适用场景 | ⭐⭐⭐⭐ | 为什么 Redis 选择内存计算?适用场景的边界在哪里? |
| **01.2 单线程IO** | 单线程模型与 I/O 多路复用 | ⭐⭐⭐⭐⭐ | 单线程为什么快?epoll 的事件驱动原理? |
| **01.3 RESP协议** | RESP 协议与通信模型 | ⭐⭐⭐ | Redis 自定义协议的设计、批量操作优化 |
四、核心考点速记
考点 1:Redis 为什么快?
内存计算(纳秒级随机访问)+ 单线程避免锁竞争 + I/O 多路复用(epoll 事件驱动)+ 高效的数据结构 = 单机 QPS 10万+
考点 2:单线程模型是大瓶颈吗?
常见误解:单线程 = 性能差 理解本质:
- Redis 瓶颈在内存/网络,不在 CPU
- 单线程避免了锁、上下文切换
- 6.0 后网络 I/O 多线程,命令执行仍是单线程 真正的瓶颈:大 key(O(N) 操作会阻塞事件循环)
考点 3:与 Memcached 的核心差异
Memcached Redis 纯缓存 + 多线程 数据结构服务器 + 单线程 不支持持久化 支持持久化(RDB/AOF) 仅 String 丰富结构 + 高可用
📚 相关板块
- **核心数据结构** — 基于本板块的架构具体实现
- **持久化索引** — 数据落地的不同策略
- **总纲设计文档**