您好,匿名用户

mysql的数据更新怎么也实时在redis缓存中也更新?

0 投票
  • mysql数据更新后,redis的缓存并没有更新,导致浏览的内容还是缓存中的脏数据,最后我手动flush了缓存,才使得mysql更改的数据生效显示。
  • 但是我想让mysql的update数据在更新完毕后,能自动实时同步到redis缓存数据库中,请问有什么方法吗?或者有什么资料可供我借鉴一下?(ps:也许我这个问题问的不是很专业,大佬能看懂我说的啥意思就行)。
用户头像 提问 2019年 5月22日 @ Hera 下士 (839 威望)
分享到:

1个回答

0 投票
 
最佳答案

有好几种方案,从简单到复杂如下:

  1. 数据库只写,redis只读,缓存设定过期时间,过期了再去数据库取,缺点是数据一致性比较差
  2. 在应用层上,数据库事务提交后接着写redis,缺点是容错性比较差,大规模架构下缓存可能写失败,适合小应用
  3. 利用消息队列,比如Kafka,写缓存的命令push到队列,redis自己去pull
  4. redis的更新利用mysql的binlog复现

http://simongui.github.io/201...

用户头像 回复 2019年 5月22日 @ 坑爹 上士 (1,753 威望)
选中 2019年 5月12日 @Hera
提一个问题:

相关问题

0 投票
1 回复 419 阅读
0 投票
1 回复 129 阅读
用户头像 提问 2015年 11月7日 @ Maokai 中士 (1,427 威望)
0 投票
1 回复 232 阅读
用户头像 提问 2017年 4月22日 @ 坑爹 上士 (1,753 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

IT技术交流群 - 随意问
欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...