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

无服务器函数体系结构设计

无服务器体系结构通过将其运行所需的基础结构中的代码抽象化,将云平台演变为纯云原生代码。 Azure Functions 是一个无服务器计算选项,它支持函数(即执行单个操作的小段代码)。

将无服务器体系结构与 Functions 应用程序配合使用的好处包括:

  • Azure 基础结构自动提供应用程序保持大规模运行所需的所有更新服务器。
  • 计算资源动态分配并即时自动缩放以满足弹性需求。 无服务器并不意味着“没有服务器”,而是“更少的服务器”,因为服务器仅根据需要运行。
  • 微计费仅对代码执行所用的计算资源和持续时间收费,从而节省成本。
  • 函数绑定通过提供对各种 Azure 和第三方服务的声明性访问来简化集成。

函数由事件驱动。 外部事件(例如 HTTP Web 请求、消息、计划或数据更改)会触发函数代码。 Functions 应用程序不编码触发器,只编码对触发器的响应。 由于进入门槛更低,开发人员可以专注于业务逻辑,而不是编写代码来处理消息传递之类的基础结构问题。

Azure Functions 是 Azure 和 Azure Stack 中的一项托管服务。 开源 Functions 运行时适用于许多环境,包括 Kubernetes、Azure IoT Edge、本地和其他云。

无服务器和 Functions 要求采用新的思维方式并采用新的方法来构建应用程序。 对于每个问题来说,它们并不都是正确的解决方案。 有关无服务器 Functions 场景示例,请查看参考体系结构

实现步骤

要使用 Azure Functions 成功实现无服务器技术,需要执行以下操作:

  • 决定和计划

    架构师和技术决策者 (TDM) 执行应用程序评估、举办或参加技术研讨会和培训、运行概念证明 (PoC) 或试点项目,并在必要时举办体系结构设计会议。

  • 开发和部署应用

    开发人员实现无服务器 Functions 应用开发模式和做法,配置 DevOps 管道,并采用站点可靠性工程 (SRE) 最佳做法。

  • 管理操作

    IT 专业人员识别托管配置,通过将基础结构预配自动化来使可伸缩性面向未来,并针对业务连续性和灾难恢复进行规划来维持可用性。

  • 保护应用安全

    安全专业人员处理 Azure Functions 安全要素、保护托管设置并提供应用程序安全指南。