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

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. 逻辑过期(让一个线程访问数据库,其他的线程返回旧数据)
相关推荐
ONEPEICE-ing2 小时前
快速入门Springboot+vue——MybatisPlus多表查询及分页查询
前端·vue.js·spring boot·mybatis
wolf犭良4 小时前
14、《SpringBoot+MyBatis集成(2)——进阶配置XML与注解的灵活运用》
xml·spring boot·mybatis
seabirdssss4 小时前
重构测试项目为spring+springMVC+Mybatis框架
java·spring·重构·mvc·mybatis
Golinie5 小时前
【Go | 从0实现简单分布式缓存】-1:LRU缓存淘汰策略与单机并发缓存
分布式·缓存·golang
清风微凉 aaa5 小时前
Redis-03高级篇中-多级缓存:
数据库·redis·缓存
一个假的前端男5 小时前
node 使用 Redis 缓存
数据库·redis·缓存
羊村懒哥5 小时前
高性能内存对象缓存Memcached详细实验操作
数据库·缓存·memcached
火烧屁屁啦6 小时前
【JavaEE进阶】MyBatis之动态SQL
java·java-ee·mybatis
左灯右行的爱情6 小时前
Redis-缓存过期和内存淘汰
前端·redis·缓存
羊村懒哥8 小时前
网络缓存加速技术解析:从诞生到演进
缓存