mq同步数据到mysql解决方案_同步 MySQL 数据至 Elasticsearch/Redis/MQ 等的五种方式

同步 MySQL 数据至 Elasticsearch/Redis/MQ 等的五种方式

在实际应用中,我们经常需要把 MySQL 的数据同步至其它数据源,也就是在对 MySQL 的数据进行了新增、修改、删除等操作后,把该数据相关的业务逻辑变更也应用到其它数据源,例如:MySQL -> Elasticsearch ,同步 ES 的索引

MySQL -> Redis ,刷新缓存

MySQL -> MQ (如 Kafka 等) ,投递消息

本文总结了五种数据同步的方式。

1. 业务层同步

7f671478bc5547f4e520a0ec5e2f5333.png

由于对 MySQL 数据的操作也是在业务层完成的,所以在业务层同步操作另外的数据源也是很自然的,比较常见的做法就是在 ORM 的 hooks 钩子里编写相关同步代码。

这种方式的缺点是,当服务越来越多时,同步的部分可能会过于分散从而导致难以更新迭代,例如对 ES 索引进行不兼容迁移时就可能会牵一发而动全身。

2. 中间件同步

ffeca091d82b87ad69f2e2e53fb716dd.png

当应用架构演变为微服务时,各个服务里可能不再直接调用 MySQL ,而是通过一层 middle

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值