所有的服务织物 示例 都展示了单一解决方案服务织物示例。这似乎与微服务的理念相悖,微服务需要在服务之间实现完全的依赖隔离。尽管您可以手动遵循此模式,但更常见的做法是通过使每个服务成为其自己的存储库和解决方案/项目来强制执行它。
如何使用多个解决方案(位于多个 Git 存储库中)管理和部署服务织物服务,并强制执行服务合同 (ServiceInferfaces)?
例如:
Service Fabric Solution
App1 - Customers
- Service1 [Carts] From Other Solution
- Service2 [LocationInfo]From Other Solution
- Service3 [REST WebAPI for Admin] From Other Solution
App2 - Products
- Service4 [Status]From Other Solution
- Service5 [Firmware]From Other Solution
- Service6 [Event Stream] From Other Solution
External Solution
- Service1
External Solution
- Service2
External Solution
- Service3
External Solution
- Service4
External Solution
- Service5
External Solution
- Service6
1) 作为一名开发者,我希望检查和构建所有当前的应用程序/服务版本。我想启动管理所有清单的 Service Fabric 项目,并将其部署到我的本地开发群集中。我想强制执行解决方案之间相同的服务接口。我不明白如何做到这一点,因为应用程序是服务外部的。
2) 作为 DevOps 团队,我希望自动拉取应用程序,构建并将其部署到 Azure。
我们如何通过单独的解决方案来"强制执行"隔离,同时使它们易于合并并部署到群集中,同时还要容易创建针对 DEV、QA 和 PROD 环境分别配置的管道。
哪些工作流程/流程/项目结构可以实现这一点?这真的可能吗?