基于ddd分层架构实践精华
2024-04-19 16:41:09 1 举报
企业中流行的架构,基于中台与ddd分层设计思想
作者其他创作
大纲/内容
网关(Gateway)
user interface
编排多个用户交互
调用方式Ajax
最终一致性
实体(Entity)
Mq
值对象(ValueObject)
context service
编排多个聚合
调用聚合根构建、初始化等对象赋值操作
NoSql
领域事件(进程内)
聚合
应用网关层
User
仓储接口(Repository interface)
向上抽象
application service
编排多个领域服务
调用方式HTTP或RPC
聚合根(Agg)
限界上下文(Context)
用例(Use Case)
领域服务层
开闭原则 对扩展开放,对修改关闭
user service
编排多个应用服务
调用方式HTTP
可靠消息
限界上下文
向下具体
聚合的优势:聚合内部的实体可以紧密的工作,聚合之间可以低耦合的工作聚合的判断标准:实体是否是整体和部分的关系,是否存在着相同的生命周期,聚合根是聚合的管理者,聚合根下的实体和值对象都只能通过聚合根进行访问,并保持一致的生命周期设计心得与原则:i.聚合宁愿设计的小一点也不要设计的太大,小聚合有助于进行微服务的拆分;ii.聚合中的实体中没有业务逻辑代码,只有对象的创建、对象的初始化、状态管理等个体相关的代码;iii.聚合根不仅仅是实体,还是所在聚合的管理者;iv.一个聚合中只容许拥有一个聚合根,聚合根对其持有的实体和值对象进行业务逻辑下的赋值操作(充血),丰富聚合根的自身行为处理。
domain service
编排多个限界上下文
调用方式RPC
资源适配层
应用(Application)
仓储接口实现(Repository)
UI层
Sql
基础设施层
领域(Domain)
领域核心
事件
强一致性
应用服务层
0 条评论
下一页