Configuration 六边形结构/端口和;适配器:具有多个驱动程序适配器的应用程序配置
我正在寻找一些指导或最佳实践,以了解如何配置和构造一个符合同时支持多个(驱动程序)适配器的六边形体系结构的应用程序 我的API/应用程序层/端口代表应用程序的边界。我现在正在编写驱动程序适配器,目标是该应用程序同时支持控制台/CLI适配器和REST适配器 有人对配置和连接应用程序的主要组件的方法有什么想法吗Configuration 六边形结构/端口和;适配器:具有多个驱动程序适配器的应用程序配置,configuration,composition,clean-architecture,hexagonal-architecture,Configuration,Composition,Clean Architecture,Hexagonal Architecture,我正在寻找一些指导或最佳实践,以了解如何配置和构造一个符合同时支持多个(驱动程序)适配器的六边形体系结构的应用程序 我的API/应用程序层/端口代表应用程序的边界。我现在正在编写驱动程序适配器,目标是该应用程序同时支持控制台/CLI适配器和REST适配器 有人对配置和连接应用程序的主要组件的方法有什么想法吗 配置整个应用程序的单个主组件:包括所有主适配器。以及加载应用程序配置。在这种情况下,它将启动REST服务并启动CLI控制台应用程序 每种类型的主适配器都有一个单独的主组件。也就是说,一对一
- 配置整个应用程序的单个主组件:包括所有主适配器。以及加载应用程序配置。在这种情况下,它将启动REST服务并启动CLI控制台应用程序
- 每种类型的主适配器都有一个单独的主组件。也就是说,一对一的应用程序。一个用于CLI/控制台应用程序。我担心的是,在边界内配置应用程序(即API服务、存储库等)会导致大量重复
- 遵循上述方法,但将公共配置/连接提取到共享类中
史蒂夫这是一个有趣的问题 从我的观点来看,尝试忠实于作者所解释的模式,尽管它也可以为一个驱动程序端口运行多个驱动程序适配器,“应用程序作为一个整体”(让我们称之为系统,因为应用程序是六边形的)是运行在hexagon的每个驱动程序端口上的驱动程序适配器的实例,以及实现每个驱动端口的驱动适配器的实例。 系统的配置是为每个端口选择的适配器。运行主组件时,必须为每个端口指定所需的适配器 也就是说,为了运行系统,我研究了两种方法: (1) 要有一个附加组件(命名为main component、composition root、startup、init或任何您想要的组件)来实例化驱动适配器和hexagon,最后实例化驱动适配器并运行它们。这样,系统架构在驱动端看起来像一个应用程序容器,在驱动端看起来像一个插件架构 (2) 独立运行每个驱动程序适配器。正是驱动程序适配器启动了游戏,向hexagon请求一个驱动程序端口实例,hexagon将向每个驱动端口请求一个驱动适配器实例 对于您的示例中关于主要组件的问题,根据我的方法(1),我将运行两个hexagon实例,但您可以只运行一个,我认为这没有任何问题
我在上写了一篇关于六边形体系结构的理论文章,现在我正在写一篇关于如何实现六边形体系结构的文章,以及一个代码示例。谢谢。这对找到适合我的情况的最佳方法非常有帮助。