首先不了解什么是Cache-Aside缓存模式,可以先跳转到之前写过的文章查看一下,再来阅读本文,传送门在下方。 Cache-Aside缓存模式写请求时,为何是删除缓存,而不是更新缓存 接下来言归正传,用两个线程分别做写操作和读操作,模拟异常情况时缓存和数据库的变化。 走完上述的流程,就会发现: 线程B在缓存保存的是老数据 线程A在数据库更新的是新数据 发生冲突,所以要先操作数据库,再操作缓存