Redis 面试常考问题(高频核心版)

大家好,这里是卡卡酷,今天讲一下

前言

在后端技术面试中,Redis 作为一款高性能的内存数据库,是面试官考察的重点内容之一。无论是初级开发岗位还是高级架构师岗位,都可能涉及 Redis 的相关问题。本文整理了 Redis 面试中常见的问题及详细解答,涵盖基础概念、核心特性、数据结构、持久化、高可用、性能优化等多个方面,帮助大家系统梳理 Redis 知识,从容应对面试。

​​

篇幅有限,为了不影响大家的阅读体验

垫子版内容已经整理,直接嗱:

一、基础必问​

1. Redis 核心特点是什么?(几乎必问)


参考答案 :6 个核心点 ------高性能(内存存储,每秒数十万次读写)、多数据结构(String/Hash 等)、持久化(RDB+AOF)、高可用(主从 + 哨兵)、分布式(Redis Cluster 分片)、多语言支持(适配 Java/Python 等)。

2. Redis 与 MySQL 核心区别?(高频对比)​

参考答案:关键在 3 点 ------​

存储位置:Redis 在内存(支持持久化),MySQL 在磁盘(依赖缓存);​

数据模型:Redis 是键值多结构,MySQL 是关系型表结构;​

事务 :Redis 仅简单事务(无回滚),MySQL 支持完整 ACID 事务。​

二、数据结构高频题​

1. Redis 主要数据结构及典型场景?(核心考点)​

参考答案:5 种常用结构 + 场景,记关键对应关系:​

String:缓存、计数器、分布式锁;​

Hash:存用户 / 商品对象、购物车;​

List:消息队列、最新列表;​

Set:去重、好友关系;​

Sorted Set:排行榜、范围查询。​

2. Redis String 与普通语言字符串的区别?(易忽略考点)​

参考答案:核心在存储和功能 ------​

存储 :Redis 用 SDS(存长度 / 空闲空间,支持二进制安全),普通语言用字符数组;​

功能:Redis 支持 INCR/DECR/MSET,普通语言仅基础拼接截取。

三、持久化重点题​

1. RDB 和 AOF 持久化的区别?(必问二选一)​

参考答案:从原理、优缺点对比:

|----|---------------|-------------|
| 维度 | RDB | AOF |
| 原理 | 间隔生成内存快照(二进制) | 记录写命令日志(文本) |
| 优点 | 文件小、恢复快 | 数据安全高(丢数据少) |
| 缺点 | 安全性低(丢间隔数据) | 文件大、恢复慢 |

2. 业务中怎么选 Redis 持久化方式?(结合场景题)


参考答案:按需求选 ------​

选 AOF:高安全需求(如金融数据)、需审计数据变化;​

选 RDB:高并发、数据丢失容忍高(如非核心缓存)、需频繁备份;​

选混合(4.0+):要平衡恢复速度和安全性。​

四、高可用核心题​

1. Redis 主从复制的原理和作用?(高可用基础必问)​

参考答案:原理 + 3 大作用 ------​

原理:从库先同步主库全量数据,后续实时同步增量命令(主发从执行);​

作用:数据备份、读写分离(减轻主库压力)、故障转移基础(主挂从可晋升)。

相关推荐
Olrookie30 分钟前
若依前后端分离版学习笔记(二十)——实现滑块验证码(vue3)
java·前端·笔记·后端·学习·vue·ruoyi
倚栏听风雨1 小时前
java.lang.SecurityException异常
java
星河队长1 小时前
VS创建C++动态库和C#访问过程
java·c++·c#
鼠鼠我捏,要死了捏2 小时前
Java虚拟线程原理与性能优化实战
java·performance-optimization·virtual-thread
艾菜籽2 小时前
Spring MVC练习:留言板
java·spring·mvc
左灯右行的爱情2 小时前
4-Spring SPI机制解读
java·后端·spring
Code小翊2 小时前
C语言bsearch的使用
java·c语言·前端
yong99902 小时前
C#驱动斑马打印机实现包装自动打印
java·数据库·c#
好记忆不如烂笔头abc2 小时前
linux系统记录登录用户的所有操作
java·linux·服务器
沐怡旸3 小时前
【穿越Effective C++】条款02:尽量以const, enum, inline替换#define
c++·面试