微服务 描述了从单独可部署的服务构建分布式应用程序的体系结构过程,这些服务执行特定业务功能并通过 Web 接口进行通信。 DevOps 团队将独立功能单元封装在微服务中,并像构建基块一样组合这些微服务,从而构建更大的系统。
微服务应用开放/封闭原则的示例:
- 这些系统允许扩展(通过它们公开的接口进行扩展)
- 它们已关闭以防止修改(每个都是独立实现和版本化的)
微服务在整体体系结构上提供了许多优势:
- 它们可以通过确保一个服务中的问题不会崩溃或影响应用程序的其他部分来删除 单一故障点 (SPOF)。
- 可以独立扩展单个微服务,以提供额外的可用性和容量。
- DevOps 团队可以通过添加新微服务来扩展功能,而无需不必要的影响应用程序的其他部分。
使用微服务可以提高团队速度。 DevOps 做法(如 持续集成 和 持续交付)用于推动微服务部署。 微服务通过允许软件开发团队利用事件驱动的编程和自动缩放等方案,很好地补充基于云的应用程序体系结构。 微服务组件通常通过 REST 协议公开 API(应用程序编程接口),以便与其他服务通信。
越来越常见的做法是使用容器群集实现微服务。 容器允许微服务的隔离、打包和部署,而业务流程将一组容器扩展到应用程序中。
后续步骤
详细了解 Azure 上的微服务。