缓存更新顺序

考虑多线程的场景

1.先删除缓存再更新DB

多线程下先删除缓存再更新DB会导致,一个线程更新缓存,一个线程进行查询,如果缓存中查询不到就会去DB中查询旧数据并放到缓存中,这样及时之后DB中是新数据,缓存中也是旧数据,就会导致脏数据的出现

 

2.先更新DB再更新缓存

多线程下一个线程更新DB,一个线程查询缓存,这样即使缓存查到的是旧数据之后更新完DB之后缓存也会更新,只会有短暂的数据不一致的问题

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页