Azure Functions

不仅仅是事件驱动型无服务器计算

使用无服务器计算加速并简化应用程序开发

通过 Functions(一个事件驱动型无服务器计算平台,还可以解决复杂的业务流程问题)更加高效地进行开发。在本地构建和调试,而无需额外的设置,在云中大规模部署和操作,并使用触发器和绑定集成服务。

根据工作负载量自动灵活地缩放,将重点放在增值而不是基础结构管理上

基于触发器和绑定的集成编程模型,帮助你响应事件并无缝连接到其他服务

端到端的开发体验,从构建、调试到使用集成工具和内置 DevOps 功能进行部署和监控

各种编程语言和托管选项 - 始终为每个方案选择最佳的一种,并快速调整以满足业务需求

改进端到端开发体验

利用 Functions 的完整的端到端开发体验,包括在 Windows、macOS 和 Linux 等主要平台上进行本地构建和调试以及在云中进行部署和监视。使用 Visual Studio 和 Visual Studio Code 上的 Functions 扩展和模板,在与整个 Azure 平台完全集成的本地计算机上实现更快、更高效的开发。 使用常用的代码编辑器和 Azure Functions Core Tools 进行开发。使用 Azure Pipelines 建立持续集成和持续交付 (CI/CD) 管道,并从 Azure Monitor 获取有关生产中应用程序性能的智能和主动见解。

设置本地开发环境 了解如何使用 Functions 的 CI/CD 管道实现自动交付

简化复杂的业务流程挑战解决方案

无服务器函数意味着短期且无状态 - 除非需要使用它们解决有状态问题。只需对工作流定义进行编码,即可在不预配更多资源的情况下以完全托管的方式消除此限制。使用 Durable Functions 扩展在事件驱动型应用程序中以编程方式简化复杂、有状态的协调需求。还可以在声明性工作流上使用你的函数,该工作流可以利用可与 Azure 逻辑应用连接的 250 多个连接器。

深入了解 Durable Functions

在无需硬编码集成的情况下连接其他服务,以更快地开发解决方案

仅编写对于业务真正重要的代码。使用基于触发器和绑定(可使无服务器应用程序响应事件并无缝连接到其他服务)的编程模型节省编码时间。使用 Functions 通过微服务友好型方法构建缩放性更佳、更稳定的事件驱动型应用程序。

了解如何使用触发器和绑定节省时间

选择应用程序的最佳托管选项

并非所有应用程序都相同,一个托管计划并不适合所有应用程序。从云中的按每次执行的操作付费到 IoT 设备中的边缘计算,选择符合业务需求的 Functions 计划。将相同代码部署到多个目标:云服务本身、你自己的基础结构、Azure Stack 或 Azure IoT Edge。

了解托管计划 使用 Azure Functions Core Tools 随时随地运行代码

按你自己的方式进行开发

使用你已知并喜欢的技术堆栈立即开始进行编码,无需学习新的语言或框架。从 Web 服务、API 到机器学习工作流或自动脚本,为每个独特方案选择你喜欢且最适合的编程语言。

请参阅支持的语言

使用内置的安全性和监控功能创建可靠的无服务器应用程序

  • 使用 Azure Application Insights 监控和分析代码性能。使用应用程序映射和 Azure Monitor 中的分布式跟踪,在应用程序的所有组件中发现瓶颈和故障热点。
  • 使用 Azure Key Vault 通过对访问策略和审核历史记录的全面控制源化应用程序设置,而无需进行代码更改。
  • 通过 Functions 高级计划的虚拟网络连接隔离网络,使出站流量能够进入安全的虚拟网络,控制传入流量并定义应用限制。
  • 在服务级别配置托管标识,使应用程序能够轻松访问受 Azure Active Directory 保护的其他资源。
  • 使用 Azure Active Directory、Microsoft 帐户和外部提供商(例如 Twitter、Facebook 和 Google)的内置身份验证授予对应用程序的访问权限。

了解有关保护 Functions 代码的详细信息

选择适合企业需求的托管计划

消耗计划

自动缩放,仅在运行函数时为计算资源付费。使用消耗计划时,会根据传入事件数自动添加和删除 Functions 主机的实例。

高级计划 预览版

在根据需求进行自动缩放时,使用预加热的辅助角色在进入空闲状态后立即运行应用程序,在功能更加强大的实例上运行,并连接到 VNET。

Azure 应用服务计划

在应用服务计划内运行 Functions,以常规应用服务计划费率计费。非常适合长时间运行的操作,以及需要更多预测性缩放和成本的情况。

Functions 入门

文档

通过快速入门指南、教程和代码示例学习使用 Functions。

参阅文档

Microsoft Learn

通过此引导式学习路径掌握 Functions 的基础知识。

学习创建无服务器应用程序

无服务器计算指南

使用此分步指南构建并监视事件驱动型应用程序。

获取电子书

GitHub 存储库

访问开放源代码 Functions 运行时和扩展。

参阅代码

用 Functions 构建这些解决方案

具有 Node.jsMicrosoft .NET 的无服务器 API

具有内置 AI 的无服务器 Web 应用

适用于事件驱动型方案的无服务器微服务

具有无服务器体系结构的机器学习工作流

适用于文件和实时数据的无服务器数据处理管道

具有实时功能的无服务器应用程序

通过三个步骤开始使用 Functions 构建应用程序

创建一个 Azure 免费帐户,并获取 12 个月的免费服务、用于探索服务(30 天)的 $200 额度,以及超过 25 项始终免费的服务。

根据 5 分钟的快速入门指南,在 .NETJavaScriptJavaPython 上创建第一个函数。

文档代码示例库预构建组件库中寻找灵感并探索详细的 Functions 概念。

查看客户如何使用 Azure Functions

提高开发速度

Relativity 将其基于云的电子数据展示平台的开发时间从使用传统方法的四个月缩短至使用 Functions 的一周。

查看案例

Relativity

缩短复杂业务问题的处理时间

FUJIFILM Software 减少了处理时间,并使用 Azure Durable Functions 为每个棒球比赛的平均 3,000 张照片启用了当天标记功能。

查看案例

Fuji Film

实现更高的成本效益和投资回报率

Direct.One 使用 Functions 通过低于虚拟机使用成本四分之一的成本生成了五倍多的事务。

查看案例

DirectOne

创新并更快提供价值

Quest 使用基于 Functions 的无服务器体系结构将上市时间缩短了三分之二。

查看案例

Quest

有关 Functions 的常见问题解答

  • Functions 为 C#、JavaScript、F#、Java 和 Python 等语言提供了不同级别的支持。

    请参阅所有支持的语言。

  • 使用消耗计划和应用服务计划的 Functions 应用在 99.95% 的时间内都在运行或可用。

    请参阅适用于 Functions 的全部服务级别协议

  • Functions 可在不同模式下运行:消耗计划、Azure 应用服务计划和高级计划。

    比较使用不同计划的托管和缩放

  • 避免使用触发器和绑定对其他服务(例如 Azure Blog 存储和 Azure Cosmos DB)进行硬编码访问。触发器是导致函数运行的原因,绑定是将函数连接到另一资源的声明。

    请参阅 Functions 支持的所有触发器和绑定

  • 使用常用代码编辑器和开发工具在本地计算机上创建并测试函数。将本地函数连接到实时 Azure 服务,然后在本地计算机上使用完整的 Functions 运行时调试函数。在本地计算机上开发函数的要求取决于你喜欢的编程语言和工具。

    请参阅本地开发环境

使用 Azure 免费帐户,每月执行 100 万个免费 Functions。