假设先写数据库,再淘汰缓存:第一步写数据库操作成功,第二步淘汰缓存失败,则会出现DB中是新数据,Cache中是旧数据,数据不一致【db中是新数据,cache中是旧数据】。
假设先淘汰缓存,再写数据库:第一步淘汰缓存成功,第二步写数据库失败【cache中无数据,db中是旧数据】。
结论:先淘汰缓存,再写数据库。
先操作缓存,在写数据库成功之前,如果有读请求发生,可能导致旧数据入缓存,引发数据不一致。
上一篇
01-Redis缓存入门
下一篇
Redis中的缓存穿透、雪崩、击穿的原因以及解决方案(详解)