微服务的功能分类与基于实体的分类

时间:2019-03-07 02:10:08

标签: architecture microservices software-design

我尚未开始从事一个项目,该项目涉及通常的网站身份验证和其他一些服务。但这是我第一次考虑将网站拆分为微服务。我对如何拆分微服务感到困惑,

  • 按实体
    意味着微服务会照顾所有与客户相关的功能,另一个服务会照顾另一个实体的功能,依此类推。
  • 通过服务
    意思是,一个微服务负责用户的身份验证,另一个微服务负责用户可以在网站上执行的另一项服务,依此类推。
    请分享您的想法。

1 个答案:

答案 0 :(得分:0)

微服务应围绕业务功能设计,而不是水平层,例如数据访问或消息传递。

通常,您可以采用以下路径

1)首先分析业务领域以了解应用程序的功能需求。此步骤的输出是对域的非正式描述,可以将其细化为更正式的域模型集。

2)接下来,定义域的有界上下文。每个有界上下文都包含一个域模型,该模型代表较大应用程序的特定子域。

3)在有限的上下文中,应用战术DDD模式定义实体,聚合和域服务。

4)使用上一步的结果来识别应用程序中的微服务。

我摘录自微软官方网站的摘录,我认为您一定应该阅读文档(下面共享)来为您的微服务建模。

How to identify microservices