首页 > 解决方案 > 微服务架构中的动态数据复制

问题描述

是否应该跨微服务共享动态数据?

例如,有 2 个服务:项目和文档。每个项目都可以有文档和项目成员。项目成员可以访问项目文档。是否可以将项目成员存储在文档中并在每次从项目中添加/删除成员以执行访问检查时更新它们。还是每次用户查询项目文档时查询项目成员更好?

标签: microservices

解决方案


在数据复制方面,微服务方法通常是一种权衡。在我看来,只要使您的服务独立,数据复制就不错了。

如果复制一小部分数据使您的服务独立,即使其他服务关闭,它也可以完成操作,那么就采用这种方式。例如预订和订购是两个独立的服务,您可以在预订服务中保持订单状态。即使订单服务不可用,您的使用也可以在查询预订时看到最新的订单状态。

但是,如果数据复制不能让您独立,那么您就需要重新考虑这种方法。


推荐阅读