面试—Redis相关

文章讨论了Redis在缓存管理中的关键概念,包括缓存穿透、击穿、雪崩及其解决方案,双写一致性,持久化方法如RDB与AOF的对比,数据过期和淘汰策略。此外,还涉及了分布式锁的实现和Redis的集群方案,如主从复制、哨兵和分片集群,以及如何保证高并发、高可用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

在这里插入图片描述

使用场景:

  • Redis的数据持久化策略有哪些
  • 什么是缓存穿透,怎么解决
  • 什么是布隆过滤器
  • 什么是缓存击穿,怎么解决
  • 什么是缓存雪崩,怎么解决
  • redis双写问题
  • Redis分布式锁如何实现
  • Redis实现分布式锁如何合理的控制锁的有效时长
  • Redis的数据过期策略有哪些
  • Redis的数据淘汰策略有哪些

其它面试题

  • Redis集群有哪些方案, 知道嘛
  • 什么是 Redis 主从同步
  • 你们使用Redis是单点还是集群 ? 哪种集群
  • Redis分片集群中数据是怎么存储和读取的
  • redis集群脑裂
  • 怎么保证redis的高并发高可用
  • 你们用过Redis的事务吗 ? 事务的命令有哪些
  • Redis是单线程的,但是为什么还那么快?

二、缓存

1、缓存穿透

请添加图片描述

请添加图片描述

2、缓存击穿

请添加图片描述

请添加图片描述

3、缓存雪崩

在这里插入图片描述

4、双写一致性

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5、持久化

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

提取自02-Redis篇(14)_00

RDB与AOF对比

RDB和AOF各有自己的优缺点,如果对数据安全性要求较高,在实际开发中往往会结合两者来使用。

RDBAOF
持久化方式定时对整个内存做快照记录每一次执行的命令
数据完整性不完整,两次备份之间会丢失相对完整,取决于刷盘策略
文件大小会有压缩,文件体积小记录命令,文件体积很大
宕机恢复速度很快
数据恢复优先级低,因为数据完整性不如AOF高,因为数据完整性更高
系统资源占用高,大量CPU和内存消耗低,主要是磁盘IO资源但AOF重写时会占用大量CPU和内存资源
使用场景可以容忍数分钟的数据丢失,追求更快的启动速度对数据安全性要求较高常见

6、数据过期策略

在这里插入图片描述

在这里插入图片描述

7、数据淘汰策略

在这里插入图片描述

数据淘汰策略-使用建议

  1. 优先使用 allkeys-lru 策略。充分利用 LRU 算法的优势,把最近最常访问的数据留在缓存中。如果业务有明显的

冷热数据区分,建议使用。

  1. 如果业务中数据访问频率差别不大,没有明显冷热数据区分,建议使用 allkeys-random,随机选择淘汰。

  2. 如果业务中有置顶的需求,可以使用 volatile-lru 策略,同时置顶数据不设置过期时间,这些数据就一直不被删除,会淘汰其他设置过期时间的数据。

  3. 如果业务中有短时高频访问的数据,可以使用 allkeys-lfu 或 volatile-lfu 策略。

关于数据淘汰策略其他的面试问题

  • 数据库有1000万数据 ,Redis只能缓存20w数据, 如何保证Redis中的数据都是热点数据 ?

使用allkeys-lru(挑选最近最少使用的数据淘汰)淘汰策略,留下来的都是经常访问的热点数据

  • Redis的内存用完了会发生什么?

主要看数据淘汰策略是什么?如果是默认的配置( noeviction ),会直接报错

三、分布式锁

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

四、其它面试题

在Redis中提供的集群方案总共有三种

  • 主从复制
  • 哨兵模式
  • 分片集群
  1. redis主从数据同步的流程是什么?
  2. 怎么保证redis的高并发高可用?
  3. 你们使用redis是单点还是集群,哪种集群?
  4. Redis分片集群中数据是怎么存储和读取的?
  5. Redis集群脑裂,该怎么解决呢?

1、主从复制

在这里插入图片描述

请添加图片描述

在这里插入图片描述

在这里插入图片描述

2、哨兵

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3、分片集群结构

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4、I/O多路复用

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

请添加图片描述

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ha_lydms

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值