微服务的设计原则包括但不仅仅是如下几个:
1)高内聚低耦合
2)单一职责
3)要领域驱动设计,而不是数据驱动设计,也不是界面驱动设计
4)要边界清晰的微服务,而不是泥球小单体(针对微服务内部)
5)要职能清晰的分层
由DDD到服务的识别和设计,需要经过以下几个步骤:
1)根据命令设计应用服务,确定应用服务的功能,服务集合,组合和编排方式。服务集合中的服务包括领域服务或其它微服务的应用服务
2)根据应用服务功能要求设计领域服务,定义领域服务。这里需要注意:应用服务可能是由多个聚合的领域服务组合而成的
3)根据领域服务的功能,确定领域服务内的实体以及功能
4)设计实体基本属性和方法
此文章为2月Day12学习笔记,内容来源于极客时间《DDD 实战课》