大家 缓存更新 都在用什么策略呢?

2017-05-29 11:04:46 +08:00
 EDDYCJY

大家有没有一些比较好的建议,最近想给公司做缓存更新,省得总是更新不及时。

感谢!

3336 次点击
所在节点    问与答
7 条回复
lcorange
2017-05-29 13:22:19 +08:00
这篇耗子的博客可以借鉴下
http://coolshell.cn/articles/17416.html

我用的就是 先更新数据库,再让缓存失效。下一次缓存命中失败后再更新缓存
killerv
2017-05-29 14:19:42 +08:00
如果不要求实时生效,可以考虑缩短缓存时间,如果要做到实时生效,可以让缓存主动失效,或者直接覆盖缓存。
EDDYCJY
2017-05-29 14:38:05 +08:00
@killerv 是的 就是想问大家,主动失效或覆盖缓存大家是怎么做的。
我觉得把缓存删除都放在后台每次编辑的时候删除,那每个板块都要加的话,很不好。
EDDYCJY
2017-05-29 14:39:12 +08:00
@lcorange 主要是想问问 后台数据更新后,前台的缓存什么姿势更新最好。
lcorange
2017-05-29 15:44:22 +08:00
@EDDYCJY
我这里是前台直接向后台请求,不缓存数据。
后台收到请求后,先去 redis 里查看是否有缓存,有就直接返回,没有再去数据库中查找,找到后加入 redis
缓存更新就是在更新之后,将 redis 中的对应缓存删除,等待下次查询请求时(也就是上面所说的)再把数据加进缓存
EDDYCJY
2017-05-29 15:49:43 +08:00
@lcorange 那我有个疑问,在后台各个板块加入各类的删除缓存键,不会导致代码耦合太高吗,或者出现过个一年,都没人记得了。
lcorange
2017-05-29 18:00:32 +08:00
@EDDYCJY 我这里用的是 spring cache 配合 redis 来管理缓存,相关功能放到统一 service 下面,各个方法前面加上 cache 的注解,结构还是蛮清晰的

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

https://www.v2ex.com/t/364555

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

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

© 2021 V2EX