采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师您好,在cache aside模式中,针对更新流程是先更新数据库,然后在删除缓存。请问为什么不是直接更新缓存,而是清楚缓存了?因为如果是清楚缓存,那么如果有大量并发过来的时候,发现缓存是空的,势必会对数据库造成压力,但是直接更新就不会有上面这个问题,但是最终走的是删除而不是更新,是因为更新会带来其他的问题么?期待您的解答,谢谢
先更新数据库,然后在删除缓存是为了保证缓存一致性的问题。
如果先更新数据库后更新缓存会出现一下问题:
最后缓存数据库不一致,后续课程会详细进行解释,请同学深入后面课程继续学习哈,然后针对大并发对缓存造成的问题,课程可以相应讲解,请同学继续学习,有疑问随时交流哈
了解了,谢谢老师,后面的课程确实是提到了,数据库和redis的操作不是原子性的,就是在更新数据库后,由于GC等因素,导致对redis的操作可能会有延迟,所以存在把脏数据更新到redis的可能性。谢谢老师详细的解答
登录后可查看更多问答,登录/注册
项目贯穿式讲解,真正将理论与实战相结合
500 9
482 6
406 5
579 4
409 4