一、NoSQL(非关系型数据库)概述
1. 特点
-
非结构化、半结构化数据存储
-
横向扩展能力强
-
无需固定表结构
-
高并发读写性能好
2. 常见类型

二、Redis 在项目架构中的位置
Redis 在架构中主要作为 缓存层,位于应用 与 MySQL 之间:

三、Redis 如何分担系统压力
Redis 的作用:
1. 缓存热点数据(高热数据)
-
高频访问 → 读缓存
-
减少 MySQL 压力,提高响应速度
2. 缓存穿透、击穿、雪崩控制
- 使用布隆过滤器、互斥锁、过期随机、分布式限流等
3. 实现分布式功能
-
分布式锁(Redisson)
-
分布式计数器
-
分布式 session
4. 秒杀、高并发场景
-
队列削峰
-
预减库存
四、Redis 持久化机制(RDB / AOF)
0. Redis 持久化
Redis 属于内存数据库,为了防止断电数据丢失,需要持久化
Redis 提供两种机制:
① RDB(快照)
-
周期性生成数据快照
-
文件小,恢复快
-
但断电可能丢失最近一次快照后的数据
② AOF(追加日志)
-
每次写操作都记录日志
-
数据更安全
-
文件更大,恢复速度慢
通常企业使用:RDB + AOF 组合模式
五、Redis 集群架构(从简单到复杂)
架构 1:主从复制(Master-Slave)
-
提高读性能
-
单 Master 写
-
Slave 复制 Master 数据
缺点:Master 宕机后不可自动切换
架构 2:哨兵模式(Sentinel)--- 企业常用
-
在主从复制基础上加入 哨兵(监控)
-
哨兵监控 Master 状态
-
当 Master 故障 → 自动提升 Slave 为新 Master
典型 6 节点结构:
-
3 台哨兵:Sentinel1, Sentinel2, Sentinel3
-
3 台 Redis:1 主 2 从

提供高可用 HA(High Availability)
架构 3:Redis Cluster(分片集群)--- 企业常用
-
多 Master 分片存储
-
每个 Master 拥有自己的 Slave
-
实现 高并发 + 高可用 + 水平扩展
节点示例(默认 6 节点):
-
3 主:7000、7001、7002
-
3 从:7003、7004、7005

特点:
-
自动分片(16384 槽)
-
自动主备切换
-
集群无中心(节点互联)
六、Redis 集群架构对比总结

七、总结性思维导图
