Skip to content

CORE CONCEPTS · 内存数据结构

Redis 核心知识

Redis 的低延迟来自内存数据结构和单命令原子性。持久化、淘汰、复制与 Cluster 需要按数据丢失预算设计。

学完应该能做到

  • 能选择数据结构
  • 能计算内存与过期风险
  • 能设计复制和 Cluster 故障切换

三个必须建立的心智模型

01

数据结构与原子性

String、Hash、Set、ZSet、Stream 等提供不同复杂度;Lua/Functions 可组合原子逻辑。

  • 先估算 O(N)
  • 避免大 key
  • 脚本必须有时间边界
02

过期、淘汰与持久化

TTL、maxmemory policy、RDB 和 AOF 分别解决生命周期、容量与恢复。

  • 区分 expire 与 eviction
  • 监控 fork/AOF rewrite
  • 演练数据恢复
03

复制与 Cluster

异步复制意味着故障切换可能丢失已确认写入;Cluster 用 hash slot 分片。

  • 理解 WAIT 的边界
  • 使用 hash tag 控制多键操作
  • 处理 MOVED/ASK

把知识落到工程决策

建模前

先写出访问模式、正确性边界、数据生命周期和故障预算,再决定表、键、索引或分区。

上线前

使用接近生产的数据分布与并发压测,记录查询计划、资源水位和恢复时间作为基线。

运行中

监控延迟分位数、容量增长、后台维护与复制健康;报警必须能映射到可执行处置步骤。

Released under the MIT License.