更新数据库后是直接更新缓存还是删除缓存?

2020 年 5 月 28 日
 noble4cc

各有什么优缺点呢?

3648 次点击
所在节点    Java
9 条回复
hangszhang
2020 年 5 月 28 日
正确的做法好像是,更新数据库后, 延迟异步删除缓存(博客上看的...).
goodboy95
2020 年 5 月 29 日
我是删除党,毕竟项目并发不高,直接删了贼方便,不怕改的时候改错
damai0419
2020 年 5 月 29 日
删除缓存 --> 更新数据库
kiracyan
2020 年 5 月 29 日
缓存更新策略有好几种 随便搜索都有详细介绍
yiyi11
2020 年 5 月 29 日
1.删除缓存 /缓存过期(复杂缓存值可能关联其他业务计算,不能简单的更新,为了维护方便,统一由读请求维护)
2.更新数据库

对于实时性要求较高的数据,需考虑高并发情况下的双写一致性。
ilumer
2020 年 5 月 29 日
noble4cc
2020 年 5 月 29 日
@hangszhang 关键是原因呀,不然不好忽悠别人
yc8332
2020 年 5 月 29 日
这个要看是否有高并发?如果有要代码直接重建缓存,不然就会很多请求穿透到数据库。没啥请求的直接删除就行了
jinzhongyuan
2020 年 5 月 29 日
@yiyi11 读请求维护缓存,更新接口驱逐缓存, 但是正常来说更新接口先更新 DB,再驱逐缓存比较好

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.xtra.eu.org/t/676486

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX