社区
Java EE
帖子详情
数据库发生变化,怎么及时更新缓存?
鸣鸣Amadues
2018-06-16 10:32:10
为了访问速度,设计了缓存,但当数据库发生变化时,缓存里的数据已经不是最新的了,怎么样及时同时缓存,让用户在下一次访问里获得最新的数据?能不能做成数据库推送的形式?
...全文
3241
11
打赏
收藏
数据库发生变化,怎么及时更新缓存?
为了访问速度,设计了缓存,但当数据库发生变化时,缓存里的数据已经不是最新的了,怎么样及时同时缓存,让用户在下一次访问里获得最新的数据?能不能做成数据库推送的形式?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
峡
2020-05-29
打赏
举报
回复
一般是开一个单独任务删除缓存中对应数据库更新的数据。这样下次访问的时候会用数据库最新数据,并添加到缓存
RealKeyboardMan
2020-05-24
打赏
举报
回复
cache aside 策略,写数据库时删除现有缓存;读数据时未命中缓存则查数据库,查到写缓存然后返回。
wenjie4892543
2018-06-21
打赏
举报
回复
1:缓存的数据一般不会统计到数据库
2:数据库的数据入库前,可以添加到缓存中,保证数据一致性;
3:缓存可以存入磁盘中,跟数据库一样都可以直接使用
stacksoverflow
2018-06-20
打赏
举报
回复
看你的需求,是要实时同步还是要分批同步,实时同步的话就在所有更新的地方加一个切点来删除或同步缓存。 分批的话就按定时按时间戳来走。
Braska
2018-06-20
打赏
举报
回复
一般放缓存的数据都是不常变更的。 既然做了更新操作那就直接同步刷新缓存。
用户名无法显示
2018-06-20
打赏
举报
回复
可以做一个定时器,来更新缓存中的数据
maradona1984
2018-06-20
打赏
举报
回复
mysql可以考虑用canal
鸣鸣Amadues
2018-06-17
打赏
举报
回复
引用 3 楼 oyljerry的回复:
一般是开一个单独任务删除缓存中对应数据库更新的数据。这样下次访问的时候会用数据库最新数据,并添加到缓存
这样是不是每次更新完数据库都要调用一个类似缓存刷新的方法?
oyljerry
2018-06-16
打赏
举报
回复
一般是开一个单独任务删除缓存中对应数据库更新的数据。这样下次访问的时候会用数据库最新数据,并添加到缓存
stacksoverflow
2018-06-16
打赏
举报
回复
参考 http://www.cnblogs.com/knowledgesea/p/3904929.html
Java EE
67,513
社区成员
225,879
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章