redis 和 mysql 同步各位是怎么实现的?

2016 年 10 月 26 日
 li734462972

请教 redis 如何做到和 mysql 数据库的同步呢? 暂时没找到合理的方案,希望从各位这儿弄点干货。

11526 次点击
所在节点    Redis
22 条回复
li734462972
2016 年 10 月 26 日
来一发!
veelog
2016 年 10 月 26 日
你这所谓的同步时啥???一般不是将 redis 当作任务队列,然后程序处理完再写入数据库吗??
yidinghe
2016 年 10 月 26 日
没法同步,一个关系数据库,一个 nosql
rebirth2
2016 年 10 月 26 日
以前碰到过的一个应用场景是 redis 做 web app 的 cache layer ,然后需要跟关系型数据库的最新交易数据同步,比如显示最新统计数字等,这样把 redis 放在关系型数据库前面减少读取和复杂查讯的次数,减轻负荷
rebirth2
2016 年 10 月 26 日
可以利用关系型数据库的通知系统,比如 postgres 的 notify/listen 机制,实现从数据库到 redis 的 push ;有些数据库的 external table/data source 支持 redis 的话也是一个思路
wuyadong
2016 年 10 月 26 日
缓存更新?
li734462972
2016 年 10 月 26 日
@veelog 好吧 我可能没表达清楚,比如每天用户的操作,文章发布,点击量,登录次数等写到 redis ,每天凌晨把数据更新到数据库里!
li734462972
2016 年 10 月 26 日
@rebirth2 好吧 我可能没表达清楚,比如每天用户的操作,文章发布,点击量,登录次数等写到 redis ,每天凌晨把数据更新到数据库里!
li734462972
2016 年 10 月 26 日
@wuyadong 好吧 我可能没表达清楚,比如每天用户的操作,文章发布,点击量,登录次数等写到 redis ,每天凌晨把数据更新到数据库里!
zhidian
2016 年 10 月 26 日
你可以同时 @ 三个人的。。。感觉你这叫导入。
misaka19000
2016 年 10 月 26 日
@li734462972 这应该可以写个脚本在每天指定时间来自动完成吧,而且也不是很复杂
li734462972
2016 年 10 月 26 日
@zhidian
@misaka19000

果然可以同时艾特~
好吧,那就用写个脚本吧~~谢谢各位
pubby
2016 年 10 月 26 日
按照 mysql 的主从复制协议实现一个假的 slaver ,过滤出你要同步的数据,写入 redis
pubby
2016 年 10 月 26 日
哦,好吧,反了。写定时脚本处理吧
wupher
2016 年 10 月 26 日
如果你的 Server 是 Java 编写,且使用 Spring ,可以考虑使用 SpringCache 通过标签自动将 DTO 对象映射至 Redis 中。

Spring 会帮你生成实现,查询时首先查询 Cache ,查询失败后再从 MySQL 加载数据。

同样, update 以及 insert , delete 时,通过标签,同步更新 Redis 数据。

实现上述功能,仅需要在你的 DAO 层函数上打上标签即可。
li734462972
2016 年 10 月 26 日
@pubby 哈哈哈,不过还是谢谢你~~不行我再乐会儿.....
li734462972
2016 年 10 月 26 日
@wupher 这个表示看的懵逼...原谅我用了最好的语言,,,,
adv007
2016 年 10 月 26 日
搞个脚本订阅 redis 的频道然后灌到 mysql
wingyiu
2016 年 10 月 26 日
ywgx
2016 年 10 月 27 日
这不叫同步,叫导入

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

https://v2ex.ih06.com/t/315552

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

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

© 2021 V2EX