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

七、总结性思维导图

相关推荐
lhh_qrsly2 小时前
HTTP / HTTPS / MQTT / MQTTs(嵌入式学习版)
学习·http·https
cao233310 小时前
关于 y0 y1 yn 变量名冲突说法的指正
笔记
这个DBA有点耶13 小时前
从症状到根因:数据库监控指标的分层方法与静态/动态阈值策略
数据库·mysql·代码规范
SelectDB13 小时前
时间旅行与快照能力速查:Doris 侧三条落地路径
大数据·数据库·数据分析
SelectDB14 小时前
云数仓成本结构拆解速查:五层计费 vs Doris / 托管形态
大数据·数据库·数据分析
SelectDB14 小时前
什么场景能承接与建议保留:Doris vs Snowflake 边界速查
大数据·数据库·数据分析
这个DBA有点耶16 小时前
DELETE没删多少数据,表却越来越大——InnoDB删除空洞与页合并失效的根因
数据库·mysql·代码规范
ly768919 小时前
PostgreSQL 备份恢复策略:pg_basebackup、WAL 归档与 PITR 在企业 Java 系统中的落地
java·数据库·postgresql·pitr·pg_basebackup·wal 归档
~patience~19 小时前
WAV 逆向分析工具使用笔记
笔记