缓存问题与解决方法

本文探讨了缓存问题中的击穿、穿透现象及其解决方案,包括逻辑过期、使用互斥锁、主动刷新、空值处理(如布隆过滤器)、以及缓存雪崩的缓解策略如分散热点和限流。
摘要由CSDN通过智能技术生成

1.缓存击穿

解决方案:

1.逻辑过期

2.互斥锁。

3.主动刷新缓存(做一个定时任务,每隔多少秒,刷新一次缓存,CachePut),无法解决缓存机器突然坏了的情况

2.缓存穿透

数据库本身没有数据,导致缓存里没有数据。

请求去查时,缓存里没数据,请求都往数据库查,导致数据库压力大。

解决方案:

1.空也放缓存里,但是要是空list,即区分null和空list,区分缓存为空与数据库为空。

2.布隆过滤器

3.互斥锁

redis开启这个配置即可,默认是开启的

缓存未过期时不打印日志,即不走方法,直接读缓存返回数据。

3.缓存雪崩

解放方式:

1.分散热点KEY

2.限流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值