redis 知识点(java)

下面给你一份 Redis 知识点全景总结(面试 + 实战级)

覆盖 基础 → 数据类型 → 高级特性 → 缓存问题 → 分布式 → 架构设计 ,适合 Java 后端 / 中高级面试 / 真实项目


一、Redis 是什么?

Redis = Remote Dictionary Server = 内存键值数据库

✅ 高性能(10万+ QPS)

✅ 单线程(命令执行)

✅ 多路 IO 复用

✅ 支持持久化


二、Redis 为什么快?(高频)

原因 说明
内存操作 无磁盘 IO
单线程 无锁
IO 多路复用 epoll
高效数据结构 hash、跳表

不是多线程更快,而是避免上下文切换


三、Redis 数据类型(必背)

1️⃣ 五大基础类型

类型 说明 场景
String 字符串 缓存、计数
Hash 键值对 对象
List 链表 队列
Set 无序集合 去重
ZSet 有序集合 排行榜

2️⃣ 三大高级类型

类型 说明
Bitmap 位图
HyperLogLog 基数统计
GeoSpatial 地理位置

四、String 详解(最常用)

bash 复制代码
SET key value
GET key
INCR key

✅ 最大 512MB

✅ 可用于:

  • 缓存
  • 分布式锁
  • 计数器

五、Hash(对象存储)

bash 复制代码
HSET user name tom age 18
HGET user name

✅ 比 String 更节省空间

✅ 适合存储对象


六、List(队列)

bash 复制代码
LPUSH queue a
RPOP queue

✅ 可做:

  • 消息队列
  • 排行榜

七、Set(去重)

bash 复制代码
SADD tag java
SISMEMBER tag java

✅ 抽奖

✅ 共同好友


八、ZSet(有序集合 ⭐⭐⭐⭐⭐)

bash 复制代码
ZADD score 100 tom
ZREVRANGE score 0 10

✅ 底层:跳表

✅ 排行榜、延迟队列


九、Redis 过期策略(重点)

1️⃣ 过期删除方式

方式 说明
惰性删除 访问时删除
定期删除 定时抽查

两种结合


2️⃣ 内存淘汰策略

策略 说明
noeviction 不淘汰(默认)
allkeys-lru 全体 LRU
volatile-lru 有过期时间 LRU
allkeys-random 随机

生产推荐:allkeys-lru


十、缓存三大问题(必问)

1️⃣ 缓存穿透

❌ 查询 不存在的数据

✅ 解决:

  • 缓存空值
  • 布隆过滤器

2️⃣ 缓存击穿

热点 key 过期

✅ 解决:

  • 互斥锁
  • 永不过期

3️⃣ 缓存雪崩

大量 key 同时过期

✅ 解决:

  • 过期时间随机
  • 多级缓存

十一、Redis 持久化(重点)

1️⃣ RDB(快照)

✅ 优点:快

❌ 缺点:可能丢数据


2️⃣ AOF(追加日志)

✅ 数据安全

❌ 文件大


3️⃣ 混合持久化(推荐)

RDB + AOF


十二、Redis 高可用

方案 说明
主从复制 读写分离
哨兵 自动故障转移
Cluster 分布式

十三、Redis Cluster

✅ 16384 槽

✅ 数据分片

✅ 高可用


十四、Redis 分布式锁(高频)

java 复制代码
SET lock uuid NX PX 30000

✅ 必须:

  • 唯一 value
  • 过期时间
  • Lua 解锁

❌ 不要用 SETNX + DEL


十五、Redis 实现 MQ(补充)

方式 推荐
List 简单
Stream ✅ 推荐

十六、Redis 6 / 7 新特性

  • 多线程 IO
  • RESP3
  • 客户端缓存
  • ACL

十七、面试高频问题(必刷)

✅ Redis 为什么快?

✅ Redis 是单线程还是多线程?

✅ 缓存穿透 / 击穿 / 雪崩?

✅ Redis 持久化方式?

✅ Redis 内存淘汰策略?

✅ Redis 分布式锁实现?

✅ Redis 和 Memcached 区别?


十八、面试标准答案(背这段 ✅)

Redis 是基于内存的高性能键值数据库,采用单线程执行命令,通过 IO 多路复用提升性能。
支持多种数据结构,常用于缓存、分布式锁和排行榜。
通过 RDB 和 AOF 实现持久化,通过主从、哨兵和 Cluster 实现高可用。
在缓存场景中,需要重点解决缓存穿透、击穿和雪崩问题。


十九、一句话总结(记住这句)

Redis = 内存 + 数据结构 + 高并发 + 分布式


相关推荐
SelectDB19 小时前
Apache Doris AI RAG 实战:从基础 RAG 到知识图谱增强的技术能力与选型
数据库
SelectDB19 小时前
电商企业 PostgreSQL 迁移 Apache Doris:80TB 分析数据统一平台技术能力与实践
数据库
SelectDB19 小时前
阶跃星辰 Agent 可观测:Apache Doris / SelectDB 的技术能力与实践
数据库
SelectDB19 小时前
ApacheDoris Iceberg V3 湖仓 DML:Apache Doris / SelectDB 的技术能力与实践
数据库
SelectDB19 小时前
ApacheDoris Python UDF:SQL 调用 Python 的技术能力、选型对比与实践
数据库
Crazy________20 小时前
Redis03:持久化存储,大key分析,主从复制及哨兵模式
数据库·redis·容器
Zhu75820 小时前
使用helm在k8s集群部署MySQL单实例,支持当前所有主版本的最新子版本
mysql·adb·kubernetes
自由能燃气设备20 小时前
燃气容积式热水器厂家选购指南:2026年商用热水设备采购避坑手册
大数据·数据库·数据仓库·人工智能
oradh20 小时前
Oracle数据文件的大小和数量的限制总结
数据库·oracle·数据文件大小限制·数据文件数量限制
刘某的Cloud20 小时前
Galera Cluster部署 mariadb 节点down机,log sequence number恢复
linux·运维·数据库·负载均衡·mariadb·集群·高可用