你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 应用程序体系结构基本信息
该内容库演示了用于在 Azure 上设计可缩放、安全、可复原且高度可用的应用程序的结构化方法。 该指南以我们从客户互动中掌握的成熟做法为基础。
云正在改变应用程序的设计和保护方式。 应用程序不再是庞大的单体结构,而是会分解成较小的分散式服务。 这些服务通过 API 或者使用异步消息传送或事件传送进行通信。 根据需要添加新的实例即可实现应用程序横向扩展。
这些趋势带来了新的挑战。 应用程序状态为分布式状态。 操作以并行和异步方式完成。 发生故障时,应用程序必须具有复原能力。 恶意参与者连续针对应用程序进行攻击。 部署必须自动化且可预测。 监视和遥测对于深入了解该系统至关重要。 本指南旨在帮助你探索这些变革。
传统的本地部署 | 现代云 |
---|---|
整体 专为可预测的可伸缩性设计 关系型数据库 同步处理 防故障设计 (MTBF) 偶尔的大型更新 手动管理 雪花型服务器 |
已分解 专为弹性缩放设计 Polyglot 持久性(存储技术的混合) 异步处理 防故障设计 (MTTR) 经常性小规模更新 自动自我管理 不可变的基础结构 |
《Azure 应用程序体系结构基本信息指南》组织成一系列步骤:从体系结构和设计到实施。 每个步骤都有支持性的指导,可帮助设计应用程序体系结构。
第一个决策点至关重要。 要生成哪种类型的体系结构? 它可能是微服务体系结构、更传统的 N 层应用程序,或大数据解决方案。 我们已确定了多种不同的体系结构样式。 这些样式各有利弊。
了解详细信息:体系结构样式
既然知道你正在构建的体系结构类型,现在就可开始选择适合该体系结构的主要技术部分了。 下述技术选择至关重要:
“计算”指的是运行应用程序的计算资源的承载模型。 有关详细信息,请参阅选择计算服务。
数据存储不仅包括数据库,还包括消息队列、缓存、日志以及应用程序可能持久存储的其他任何内容所用的存储。 有关详细信息,请参阅选择数据存储。
“消息传递”技术可实现系统组件之间的异步消息。 有关详细信息,请参阅选择消息服务。
你可能将必须在操作过程中作出其他技术选择,但“计算”、“数据”和“消息传递”这三个元素是大多数云应用程序的核心,它们将决定你的设计的诸多方面。
选定体系结构样式和主要技术组件后,就可处理应用程序的特定设计了。 应用程序各有不同,但以下资源可在操作过程中帮到你:
根据你的方案,我们的一个参考体系结构可能是一个很好的起点。 每个参考体系结构都包括建议的做法,还包括有关可伸缩性、可用性、安全性、复原能力和其他设计方面的注意事项。 大部分还包括可部署的解决方案或参考实现。
我们已确定了十条高级设计原则,遵循这些设计原则可以提高应用程序的可伸缩性、复原能力和易管理性。 这些设计原则适用于任何体系结构样式。 在整个设计过程中,请牢记这十条高级设计原则。 有关详细信息,请参阅设计原则。
软件设计模式是经过验证可解决特定问题的可重复模式。 我们的云设计模式目录能克服分布式系统中的特定挑战。 它们能解决可用性、高可用性、卓越运营、复原能力、性能和安全性等方面的问题。 可以在此处找到设计模式的目录。
我们的最佳做法文章涵盖了包含 API 设计、自动缩放、数据分区和缓存等在内的各种设计注意事项。 请查看这些文章,采用适合你的应用程序的最佳做法。
我们的安全最佳做法介绍了如何确保应用程序的机密性、完整性和可用性不受恶意参与者的影响。
成功的云应用程序将侧重于软件质量的五大要素:可靠性、安全性、成本优化、卓越运营和性能效率。
使用 Microsoft Azure 架构良好的框架跨这五大支柱评估你的体系结构。