微服务和领域驱动设计有何不同?

5

微服务和领域驱动设计有什么区别?

它们是一样的吗?

据我所知,微服务的概念是将每个服务分开,即与其他服务分别构建和部署。

而DDD是为了将每个领域(服务?)分开,并在领域之间创建有界上下文,我认为这与微服务相同,但使用不同的术语描述。

2个回答

6

微服务和领域驱动设计是两个不同的概念,但在实现微服务时它们常常结合在一起。

领域驱动设计是对数据的逻辑分离。

每个微服务始终属于某个领域。此外,它还涵盖了子领域级别。

使用DDD在微服务架构中的好处:

1)微服务按领域分离,非常容易维护。

2)开发和部署微服务将按领域进行。

3)在领域和子领域级别上维护配置映射。

4)根据领域维护代码仓库、CI/CD流水线和部署。

5)为通信定义微服务之间的边界。


我有点困惑。因为根据这个视频 https://www.youtube.com/watch?v=NNFJREcalc0&t=371s ,它说域名包含子域名,每个子域名都是一个服务。这是正确的吗? - Jon Sud
是的,这是正确的。例如,在亚马逊购物时,您会看到有两个帐户,一个用于计费,另一个用于财务。因此,这两个帐户属于帐户管理域。在部署时,您可以部署整个域,还可以在域之间共享一些常见属性。即使您可以在一个 Pod 中部署多个服务,但在某些情况下,一个服务只是另一个服务的辅助服务。 - Vaibs

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接