您当前位置:资讯中心 >服务器 >浏览文章

我们聊聊DDD、SOA、微服务和微内核

来源:互联网 日期:2023/12/8 13:20:00 阅读量:(0)

DDD、SOA、微服务和微内核,看到经常有人把这几个概念拿出来一起讲。事实上,DDD和其他三个不是一个维度的东西。

DDD其实特别好理解,DDD就是领域来驱动设计嘛,是一种设计思想。很容易又和OOA、OOD和OOP来比较了。这个回头再说。

SOA、微服务和微内核都是架构风格,DDD里能和他们三个放在一起比较的是四层架构和六边形架构。

四层架构

四层架构长这样:

图片图片

分为用户接口层、应用层、领域层和基础层,四层架构目的是为了解耦,下层不依赖上层,从依赖关系上讲,四层架构的箭头是反过来的。

目前这个架构,在现代系统中,通常用作项目工程模块的设计。就是说更传统的MVC逐渐被淘汰,目前主流就是这种四层架构。有的项目工程会先用限界上下文划分子域,再用四层架构。然后代码结构长这样:

├─interfaces   API接口层
│   ├─dto     视图模型,数据模型定义 vo/dto(大多数情況是一样的)
│   └─controller   控制器,对外提供(Restful)接口
│ 
├─application   应用层
│   ├─service  应用服务,非核心服务 
│   └─***      others
│ 
├─domain   领域层
│   ├─entity        领域实体、聚合根,充血的领域模型 
│   ├─valueobject        领域值对象       
│   └─service  领域服务类,一些不能归属某个具体领域模型的行为
│ 
├─infrastructure  基础设施层
│   ├─po           持久化对象 
│   ├─repository 仓储类,持久化接口&实现,可与ORM映射框架结合
│   ├─dao         数据访问对象 
│   ├─client       feign等调用客户端 
└─  └─factory    工厂类,负责复杂领域对象创建,封装细节
关键字:
声明:我公司网站部分信息和资讯来自于网络,若涉及版权相关问题请致电(63937922)或在线提交留言告知,我们会第一时间屏蔽删除。
有价值
0% (0)
无价值
0% (10)

分享转发:

发表评论请先登录后发表评论。愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。