你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 应用程序体系结构基本信息

该内容库演示了用于在 Azure 上设计可缩放、安全、可复原且高度可用的应用程序的结构化方法。 该指南以我们从客户互动中掌握的成熟做法为基础。

简介

云正在改变应用程序的设计和保护方式。 应用程序不再是庞大的单体结构,而是会分解成较小的分散式服务。 这些服务通过 API 或者使用异步消息传送或事件传送进行通信。 根据需要添加新的实例即可实现应用程序横向扩展。

这些趋势带来了新的挑战。 应用程序状态为分布式状态。 操作以并行和异步方式完成。 发生故障时,应用程序必须具有复原能力。 恶意参与者连续针对应用程序进行攻击。 部署必须自动化且可预测。 监视和遥测对于深入了解该系统至关重要。 本指南旨在帮助你探索这些变革。

传统的本地部署现代云
整体
专为可预测的可伸缩性设计
关系型数据库
同步处理
防故障设计 (MTBF)
偶尔的大型更新
手动管理
雪花型服务器
已分解
专为弹性缩放设计
Polyglot 持久性(存储技术的混合)
异步处理
防故障设计 (MTTR)
经常性小规模更新
自动自我管理
不可变的基础结构

本指南的结构

《Azure 应用程序体系结构基本信息指南》组织成一系列步骤:从体系结构和设计到实施。 每个步骤都有支持性的指导,可帮助设计应用程序体系结构。

此图显示了本指南的结构,并以流程图的形式表示本文的各个部分。

架构样式

第一个决策点至关重要。 要生成哪种类型的体系结构? 它可能是微服务体系结构、更传统的 N 层应用程序,或大数据解决方案。 我们已确定了多种不同的体系结构样式。 这些样式各有利弊。

了解详细信息:体系结构样式

技术选择

既然知道你正在构建的体系结构类型,现在就可开始选择适合该体系结构的主要技术部分了。 下述技术选择至关重要:

  • “计算”指的是运行应用程序的计算资源的承载模型。 有关详细信息,请参阅选择计算服务

  • 数据存储不仅包括数据库,还包括消息队列、缓存、日志以及应用程序可能持久存储的其他任何内容所用的存储。 有关详细信息,请参阅选择数据存储

  • “消息传递”技术可实现系统组件之间的异步消息。 有关详细信息,请参阅选择消息服务

你可能将必须在操作过程中作出其他技术选择,但“计算”、“数据”和“消息传递”这三个元素是大多数云应用程序的核心,它们将决定你的设计的诸多方面。

设计体系结构

选定体系结构样式和主要技术组件后,就可处理应用程序的特定设计了。 应用程序各有不同,但以下资源可在操作过程中帮到你:

参考体系结构

根据你的方案,我们的一个参考体系结构可能是一个很好的起点。 每个参考体系结构都包括建议的做法,还包括有关可伸缩性、可用性、安全性、复原能力和其他设计方面的注意事项。 大部分还包括可部署的解决方案或参考实现。

设计原理

我们已确定了十条高级设计原则,遵循这些设计原则可以提高应用程序的可伸缩性、复原能力和易管理性。 这些设计原则适用于任何体系结构样式。 在整个设计过程中,请牢记这十条高级设计原则。 有关详细信息,请参阅设计原则

设计模式

软件设计模式是经过验证可解决特定问题的可重复模式。 我们的云设计模式目录能克服分布式系统中的特定挑战。 它们能解决可用性、高可用性、卓越运营、复原能力、性能和安全性等方面的问题。 可以在此处找到设计模式的目录。

最佳做法

我们的最佳做法文章涵盖了包含 API 设计、自动缩放、数据分区和缓存等在内的各种设计注意事项。 请查看这些文章,采用适合你的应用程序的最佳做法。

安全最佳方案

我们的安全最佳做法介绍了如何确保应用程序的机密性、完整性和可用性不受恶意参与者的影响。

质量要点

成功的云应用程序将侧重于软件质量的五大要素:可靠性、安全性、成本优化、卓越运营和性能效率。

使用 Microsoft Azure 架构良好的框架跨这五大支柱评估你的体系结构。

后续步骤