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

Azure 架构良好的 SaaS 工作负载

与其他类型的软件相比,在 Microsoft Azure 上构建和操作软件即服务(SaaS)需要采用不同的方法。 独立软件供应商(ISV)在云生态系统中有着独特的地位,因为他们的 SaaS 解决方案驱动了他们的业务。 他们将其产品出售给企业,也称为企业对企业(B2B)或消费者,也称为企业对消费者(B2C)。 ISV 通常托管和维护它们生成的 SaaS 解决方案。 其客户配置产品并管理数据。

使用精心构建的框架构建的解决方案可确保工作负荷可以大规模运行。 本系列文章提供了在 Azure 上创建可缩放、高性能、可靠且安全的 SaaS 解决方案的关键见解。 如果不熟悉精心构建的框架,建议花时间了解其原则。

请参阅 azure 架构良好的框架支柱Microsoft。

什么是 SaaS 工作负载?

术语 工作负荷 是指一组支持常见业务目标的应用程序资源,或者使用多个服务(如 API 和数据存储)协同工作,以提供特定的端到端功能。

SaaS 术语是指交付软件即服务的业务模型。 作为供应商,你负责交付和运营整个解决方案。 必须大规模管理客户环境,同时满足客户隔离、安全性和合规性的要求。 SaaS 解决方案通常依赖于多租户体系结构,其中资源在多个客户之间共享。 此方法会影响资源的设计和部署,以及提供给客户的定价模型。

常见的挑战是什么?

Microsoft Azure 是一个提供 SaaS 的优秀平台,提供必要的弹性和可伸缩性。 它还提供用于自动执行 SaaS 交付的各个方面的功能。 但是,在 Azure 上交付 SaaS 附带了自己的一系列挑战:

  • 客户期望很高、质量高、安全性和复原能力高。 对于 B2B 解决方案,你基本上成为客户的 IT 部门的扩展,负责使解决方案正常运行和正常运行。 这需要从仅仅开发软件到大规模操作。

  • 交付 SaaS 意味着将自己的业务需求与客户的需求进行平衡,有时可能会发生冲突。 你将面临压力,以降低销售的商品成本并提高效率,而客户则从解决方案中需求更多。

  • SaaS 通常以大规模或积极的增长目标运行。 缩放时,在减少操作复杂性的同时保持性能和可靠性至关重要。 手动操作是不切实际的,因此需要自动化和结构化流程,需要一定程度的运营成熟度。

  • 在客户之间共享基础结构时,隔离是一项关键要求。 无论其他客户的活动如何,客户都希望其数据安全,并体验一致的性能和可靠性。 作为供应商,你对保护客户数据和工作负载(包括来自其他客户)负有重大责任。

生成 SaaS 的成熟度模型是什么?

构建 SaaS 产品的组织通常是:

  • 初创公司或其他小型组织。 通常,人员较少,资源更少。 无论组织的规模如何,SaaS 都需要某种程度的成熟度来满足较高的客户期望。 客户信任组织来保护其数据和其他资产。 他们还可能依赖解决方案来了解其操作的重要部分。 因此,卓越运营和可靠性成为解决方案的关键方面。

    最初,初创公司应优先考虑其客户影响最大的元素。 同时,他们应规划未来的体系结构增强功能,例如自动化、租户管理、成本降低以及提高安全性和可靠性。 尽管这起初可能并不现实,但这种战略规划作为逐步实施和持续改进的蓝图。 随着初创公司的发展,它应该调整和优化其流程,采用新技术,并满足不断发展的合规性标准,以有效缩放和维护客户信任。

  • 已建立的组织。 希望现代化现有解决方案的已建立组织通常迁移到 SaaS 模型。 尽管组织可能有更多的资源,但挑战也变得复杂。 他们必须支持现有客户,同时开发新的 SaaS 解决方案,这会产生运营开销。 这种转换需要更改技术体系结构、技能集和整体业务运营。 重点是尽量减少对当前客户的影响,并确保他们收到类似或改进的可靠性、安全性和性能。 旧版解决方案减轻负担后,组织可以确定新功能和改进的优先级。

如何使用本指南?

首先 ,设计方法概述了技术和运营领域的合理性和定期主题。 这种系统的方法有助于定义要求和设计策略。 在面临不确定的选择时,重新审视此方法,使其与工作负荷的总体目标保持一致。 它还提供了一个框架,用于与营销和销售团队协作,以验证技术决策并整合客户反馈,以便持续改进。

继续学习 设计原则 ,了解 SaaS 设计方法如何与核心架构良好的框架支柱保持一致,同时考虑增长演变。 共同评估所有支柱的基本原则,包括权衡。

专注于 对解决方案影响最大的设计领域 。 每个区域都包含指导你完成设计决策的注意事项和建议。

设计领域
计费和成本管理:评估计费策略及其对销售商品成本的影响(COGS)。 在 SaaS 业务规模化时建模并预测成本变化。 寻找优化云资源支出的方法。
治理:管理和规范云服务使用情况,以建立安全的 Azure 环境。
资源组织:规划资源部署方式以支持缩放和成本要求。
标识和访问管理:了解在多租户 SaaS 环境中管理标识的挑战。 选择适当的标识提供者,并考虑需要与客户的标识系统联合。
计算:选择满足需求的计算平台。 规划客户隔离、可伸缩性和复原能力。
网络:规划网络部署,包括拓扑和防御。 在客户之间隔离资源并满足其连接需求,包括与其网络集成并将资源部署到其环境中。
数据:选择适当的数据存储,并计划隔离客户数据,同时保持运营效率。 考虑根据规模和增长进行容量规划,并确保数据满足客户复原能力要求。
DevOps 做法:根据租户模型为每个客户部署基础结构和应用程序。 对更改使用结构化方法,包括渐进式推出。
事件管理 :确定在组织中操作 SaaS 和必要的文化元素的责任。 通过投资工具和流程来准备事件,以便进行调查、修正和通信。

使用评估评审工具评估生产中优化 SaaS 工作负载的就绪情况。

提示

每个体系结构决策都涉及一系列注意事项和一组已确认的妥协,这些妥协平衡了框架的不同方面。 此图标指示这些权衡。 .

哪些资源可用?

多租户是设计 SaaS 工作负载的核心业务方法。 阅读这些附加资源了解详细信息。

后续步骤

了解在 Azure 上设计 SaaS 工作负荷时要遵循的方法。