Java面试八股之使用Redis会有哪些问题?击穿、穿透、雪崩等

  1. 使用Redis会有哪些问题?击穿、穿透、雪崩等

击穿:热点数据过期,大量并发请求被发送到数据库。

解决:设置热点数据永不过期,后台更新;增加互斥锁机制,第一个请求发现缓存失效后,从数据库获取,并更新缓存,后续请求继续从缓存中读取最新数据。

穿透:注意这个透字,顾名思义就是redis和数据库中都没有找到请求的数据,一般是非法请求或者尝试获取数据库中不存在的数据。

解决:缓存null值,防止出现请求穿透。增加请求验证,避免非法请求发送到Redis和数据库。布隆过滤器

雪崩:大量key同时过期失效,大量请求被发送到数据库。通常是因为大量key的过期时间设置成相同时间,或者Redis服务器宕机。

解决:部署哨兵模式或集群模式,防止服务宕机。设置随机的过期时间,避免大量key同时过期。

如果大家需要视频版本的讲解,欢迎关注我的B站:

相关推荐
华如锦15 分钟前
四:从零搭建一个RAG
java·开发语言·人工智能·python·机器学习·spring cloud·计算机视觉
Tony_yitao17 分钟前
22.华为OD机试真题:数组拼接(Java实现,100分通关)
java·算法·华为od·algorithm
JavaGuru_LiuYu18 分钟前
Spring Boot 整合 SSE(Server-Sent Events)
java·spring boot·后端·sse
爬山算法22 分钟前
Hibernate(26)什么是Hibernate的透明持久化?
java·后端·hibernate
彭于晏Yan24 分钟前
Springboot实现数据脱敏
java·spring boot·后端
luming-0229 分钟前
java报错解决:sun.net.utils不存
java·经验分享·bug·.net·intellij-idea
北海有初拥37 分钟前
Python基础语法万字详解
java·开发语言·python
alonewolf_9940 分钟前
Spring IOC容器扩展点全景:深入探索与实践演练
java·后端·spring
super_lzb43 分钟前
springboot打war包时将外部配置文件打入到war包内
java·spring boot·后端·maven
毛小茛44 分钟前
芋道管理系统学习——项目结构
java·学习