欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

redis缓存相关问题及解决方案

程序员文章站 2022-06-23 11:15:03
缓存问题击穿,穿透,雪崩,一致性解决方案:1.击穿:给操作加锁(缓存为空,查数据库,更新缓存)2.穿透:查数据库,存储返回空值,或者使用布隆过滤器过滤数据库中没有的数据3.雪崩:设置随机过期时间4.数据一致性:双写(更新数据库,并且更新缓存),失效模式(写数据库,删除缓存,缓存的更新由读操作完成),二者的共同问题:操作非原子操作,需要加锁。一致性解决方案: 1)缓存的所有数据都有过期时间,数据过期下一次查询触发主动更新 2)读写数据的时候,加上分布式读写锁。(在经常写,经常读的......

缓存问题
击穿,穿透,雪崩,一致性
解决方案:
1.击穿:给操作加锁(缓存为空,查数据库,更新缓存)
2.穿透:查数据库,存储返回空值,或者使用布隆过滤器过滤数据库中没有的数据
3.雪崩:设置随机过期时间
4.数据一致性:双写(更新数据库,并且更新缓存),失效模式(写数据库,删除缓存,缓存的更新由读操作完成),二者的共同问题:操作非原子操作,需要加锁。
一致性解决方案:
    1)缓存的所有数据都有过期时间,数据过期下一次查询触发主动更新
    2)读写数据的时候,加上分布式读写锁。(在经常写,经常读的场景下会影响性能,在写少读多的情况下没有影响)

一致性问题相关组件canal
 

本文地址:https://blog.csdn.net/qq_15720911/article/details/110948083