微服务架构下的事件驱动的主从复制具体应该如何做?
我看了
https://microservices.io/patterns/data/event-driven-architecture.html
https://medium.com/trendyol-tech/event-driven-microservice-architecture-91f80ceaa21e
https://medium.com/@john_freeman/querying-data-across-microservices-8d7a4667668a
等等,
搜索了 how to do data replication in mysql microservices,microservice data replication which is master which is slave 。
等等
=====================================================================
只看出来事件驱动能解决不同服务的耦合问题,能实现松耦合,然后事件驱动的数据最终一致性问题可以由主从复制来实现。我以前不知道什么是主从复制,我搜了下,发现就是一个 master 库一个 slave 库,配好了,自从从 master 库同步到 slave 库。
现在问题来了,假如我有 4 个微服务,1 个 order,1 个 product,1 个 shipment,1 个 pay,那么假如,order 微服务需要 product 微服务的数据库数据,那么我就在 order 微服务下创建一个 product 微服务数据库的 slave 库?如果这样,order服务就有2个数据库,查起来也不方便啊。怎么办啊?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
两个数据库并不能解决数据不同步的问题吧?
我的理解是数据从master同步到slave。那么所有的读取都应该从slave读取。所有的更新都应该操作master。
你更应该想清楚你这么做的目的是要实现松耦合,还是数据一致性?