在使用六角架构的 DDD 实现中,应用程序可能具有端口(接口)和适配器(客户端)。在我当前的项目中,我正在实现基于事件驱动的微服务。我有一个域应用程序服务层和基础设施层和适配器层(用于命令侦听器)。我搜索了许多实现和基础设施层,其中包含适配器和端口。现在基础设施层一次将调用应用程序服务层,根据我的理解这是错误的。
这是正确的实现吗?在哪里添加端口/命令侦听器。
在使用六角架构的 DDD 实现中,应用程序可能具有端口(接口)和适配器(客户端)。在我当前的项目中,我正在实现基于事件驱动的微服务。我有一个域应用程序服务层和基础设施层和适配器层(用于命令侦听器)。我搜索了许多实现和基础设施层,其中包含适配器和端口。现在基础设施层一次将调用应用程序服务层,根据我的理解这是错误的。
这是正确的实现吗?在哪里添加端口/命令侦听器。
我在 DDD 层和六边形架构之间进行了以下匹配:
驱动程序端口是 DDD 应用程序服务接口,它们是六边形的左边缘。
六边形内部分为DDD应用服务实现和DDD领域模型。
驱动端口(例如存储库接口,或由基础设施实现的服务接口)是六边形的右边缘。
六边形的内部实现驱动端口并使用驱动端口。
驱动程序适配器(例如,REST API 控制器或 Web 应用程序)使用/调用驱动程序端口。驱动适配器是 DDD 的表示层。
驱动适配器实现驱动端口。驱动适配器是 DDD 的基础设施层。
如果你想看一看,这是我写的一篇解释六边形架构的文章:
https://softwarecampament.wordpress.com/portsadapters
希望能帮助到你。