模块的微服务分组

时间:2016-04-16 04:55:50

标签: soa microservices

我正在开发员工管理系统并遵循微服务式架构。最初,我创建了ERD并设计了几个主维护表,如Department,Project,Position等......

我的问题是我是否必须为每个表创建一个服务?或者我应该为所有这些表创建一个名为主维护的服务吗?

请帮我决定。提前谢谢。

1 个答案:

答案 0 :(得分:3)

SOA的第二个网络指出:

  

服务是autonomous

这意味着尽可能地在服务之间不应该存在水平耦合。从您的问题中提取具体示例,部门服务不应与项目服务相关联。

但是,通过在单个数据库中对部门和项目数据建模,您已经引入了它们之间的耦合。

要解除您的服务,您应该为每个服务提供自己的数据库。然后,服务必须通过其他机制进行通信,以便彼此交换数据,而不是通过数据库。

但是,这种方法会给您的解决方案带来复杂性。这称为 microservice premium 。您应该问问自己,这个成本是否值得基于微服务的方法的好处,至少开始时。