查询缓存-缓存更新-缓存穿透-缓存雪崩-缓存击穿

1.查询缓存

1.2.出现的原因

用户高并发访问带来的服务器读写的压力

1.3.解决方法

添加缓存

2.缓存更新

2.1.出现的原因

出现数据不一致的问题

2.2.解决方法

操作数据库的时候

  1. 更新数据库
  2. 删除缓存
    查询数据的时候
  3. 设置过期时间

3.缓存穿透

3.1.出现的原因

在高并发访问某个商品时,在redis和数据库中都没有命中,对数据库造成压力。

3.2.解决方法

向redis中设置空值,将并发的压力给到redis,因为他比数据库的并发能力强。

4.缓存雪崩

4.1.出现的原因

redis宕机,多个热点key失效,压力瞬间给到数据库

5.缓存击穿

5.1.出现的原因

某一个热点key失效,瞬间压力给到数据库

5.2.解决方法

  1. 互斥锁(让一个线程访问数据库,其他的线程进行等待)
  2. 逻辑过期(让一个线程访问数据库,其他的线程返回旧数据)
相关推荐
新world5 小时前
mybatis-plus从入门到入土(二):单元测试
单元测试·log4j·mybatis
在肯德基吃麻辣烫8 小时前
《Redis》缓存与分布式锁
redis·分布式·缓存
RainbowSea9 小时前
问题 1:MyBatis-plus-3.5.9 的分页功能修复
java·spring boot·mybatis
JAVA学习通11 小时前
Mybatis----留言板
mybatis
先睡13 小时前
Redis的缓存击穿和缓存雪崩
redis·spring·缓存
双力臂40419 小时前
MyBatis动态SQL进阶:复杂查询与性能优化实战
java·sql·性能优化·mybatis
慕y27421 小时前
Java学习第十五部分——MyBatis
java·学习·mybatis
CodeWithMe1 天前
【Note】《深入理解Linux内核》 Chapter 15 :深入理解 Linux 页缓存
linux·spring·缓存
一勺菠萝丶1 天前
Spring Boot + MyBatis/MyBatis Plus:XML中循环处理List参数的终极指南
xml·spring boot·mybatis
大春儿的试验田1 天前
高并发收藏功能设计:Redis异步同步与定时补偿机制详解
java·数据库·redis·学习·缓存