NoSQL 与 Redis

一、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 集群架构对比总结

七、总结性思维导图

相关推荐
ltl14 分钟前
ClickHouse 与 DuckDB 选型:不是同一类列存
数据库
FakeOccupational28 分钟前
【电路笔记 STM32】stm32f103 实现HAL_UART_Transmit_DMA + 普通模式/连续模式的 UART DMA 收发
笔记·stm32·嵌入式硬件
ltl30 分钟前
RocksDB WAL 与 WriteBatch:持久化与原子批写
数据库
ltl30 分钟前
流批一体与增量视图:Materialize、RisingWave 与 DBSP
数据库
ltl34 分钟前
向量混合检索与标量过滤:表达式、bitset 与选择度
数据库
雪的季节34 分钟前
OPENCV学习(补充1)
人工智能·opencv·学习
lf132102744 分钟前
用 JSON Schema 管装修节点记录:从照片台账到可校验工程数据
网络·数据库·人工智能·经验分享·物联网·json·智能家居
roman_日积跬步-终至千里1 小时前
【资源控制】自助查询的智能路由
java·大数据·数据库
SelectDB1 小时前
无锡锡商银行 数据仓库演进:Apache Doris / SelectDB 的技术能力与实践
数据库
北京海得康2 小时前
DMD基因治疗deramiocel遭FDA质疑,Ultragenyx DTX401即将获批
笔记