设计微服务体系结构
微服务已成为构建可复原、高度可缩放、独立部署且能够快速演变的云应用程序的常用体系结构样式。 但是,除了流行语之外,微服务还需要不同的方法来设计和生成应用程序。
在此一组文章中,我们将探讨如何在 Azure 上构建微服务体系结构。 Topics include:
Prerequisites
阅读这些文章之前,可以先阅读以下文章:
- 微服务体系结构简介。 了解微服务的优势和挑战,以及何时使用此体系结构风格。
- 使用域分析为微服务建模。 了解建模微服务的域驱动方法。
Example architecture
下载此体系结构的 Visio 文件。
Scenario
Fabrikam, Inc. 正在启动无人机交付服务。 该公司管理着一群无人机。 商家可以注册该服务,用户可以请求无人机收取要交付的商品。 当客户安排取件时,后端系统会分配一架无人机,并将估计的交付时间告知用户。 交付正在进行时,客户可以通过持续更新的 ETA 跟踪无人机的位置。
此解决方案非常适合航空航天和飞机工业。
此方案涉及一个相当复杂的域。 一些业务问题包括计划无人机、跟踪包、管理用户帐户以及存储和分析历史数据。 此外,Fabrikam 希望快速上市,然后快速迭代,添加新功能和功能。 应用程序需要以云规模运行,具有较高的服务级别目标(SLO)。 Fabrikam 还期望系统的不同部分对数据存储和查询有不同的要求。 所有这些注意事项都会导致 Fabrikam 为无人机交付应用程序选择微服务体系结构。
Note
有关在微服务体系结构和其他体系结构样式之间进行选择的帮助,请参阅 Azure 应用程序体系结构指南。
此体系结构将 Kubernetes 与 Azure Kubernetes 服务(AKS)配合使用。 但是,许多高级体系结构决策和挑战将适用于任何容器业务流程协调程序。
Next steps
Related resources
- 为微服务设计服务间通信
- 微服务的设计 API
- 在微服务中使用 API 网关
- 微服务的数据注意事项
- 微服务
设计模式