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

Azure Functions 语言堆栈支持策略

本文介绍 Azure Functions 支持的语言堆栈的支持策略。 指南特定于语言。 确保在文章顶部选择喜欢的开发语言。

停用过程

Functions 运行时包括 Functions 主机和特定于编程语言的辅助角色。 为了保持对在 Azure 中运行函数的完全支持,Functions 支持会配合给定语言的生命周期终止支持。 为了帮助你使应用保持最新且受支持,Functions 会在语言堆栈版本到达生命周期结束日期时,逐步减少对其的支持。 通常,停用日期与给定语言的社区生命周期结束日期一致。

  • 通知阶段

    Functions 团队会向您发送电子邮件,其中的内容有关会影响你函数应用的即将停用的语言版本。 收到通知时,你应准备将这些应用升级到受支持的版本。

  • 停用阶段

    在该语言生命周期结束日期之后,仍然可以创建和部署使用已停用语言版本的函数应用,且这些应用继续在平台上运行。 但是,在将这些应用升级到受支持的语言版本之前,它们将不符合新功能、安全修补程序、性能优化的资格。

    重要

    如果使用不受支持的运行时或语言版本运行函数应用,则可能会遇到问题和性能影响,需要先升级才能获得对函数应用的支持。 因此,强烈建议将此类应用的语言版本升级到受支持的版本。 若要了解如何操作,请参阅 更新 Azure Functions 中的语言堆栈版本

停用策略例外情况

此处记录了 Functions 支持的语言特定停用策略的例外情况:

一般停用策略目前没有例外情况。

使用这些资源可以更好地了解和规划函数应用中与语言支持相关的更改。

资源 详细信息
语言版本支持时间表 .NET 支持策略页
配置语言版本 独立工作模型
进程模型
停用的运行时版本* v2.x:.NET Core 2.1
v3.x:.NET Core 3.1 和 .NET 5**
资源 详细信息
语言版本支持时间表 GitHub 上的 Node.js 发布页
配置语言版本 设置 Node 版本
停用的运行时版本* v2.x:Node.js 10 和 8
v3.x:Node.js 14、12 和 10
资源 详细信息
语言版本支持时间表 Azure 和 Azure Stack 上的 Java 支持
配置语言版本 更新堆栈配置
停用的运行时版本* v2.x:Java 8
v3.x:Java 11 和 8
资源 详细信息
语言版本支持时间表 PowerShell 支持生命周期
配置语言版本 更改 PowerShell 版本
资源 详细信息
语言版本支持时间表 Python 开发人员指南
配置语言版本 更改 Python 版本
停用的运行时版本* v2.x:Python 3.7
v3.x:Python 3.9、3.8、3.7

*显示不再受支持的 Functions 运行时版本的最高语言堆栈级别,如运行时版本 2.x。

有关 Azure Functions 当前支持的语言级别,请参阅按运行时版本列出的语言

常见问题解答

本部分提供有关语言支持策略的常见问题的解答。

Functions 目前支持我首选语言的哪些版本?

有关受支持的语言堆栈版本的最新列表,请参阅 Azure Functions 中支持的语言

Functions 将继续支持我的语言版本多长时间?

Functions 支持与社区针对给定语言堆栈发布的生命周期结束日期一致。 有关当前受支持版本的预期生命周期结束日期,请参阅 Azure Functions 中支持的语言

当运行时版本终止支持时会发生什么情况?

在之前受支持的 Functions 运行时版本终止支持后,Microsoft 将不再提供 bug 修复、安全更新或修补程序。 使用已停用版本的应用也可能面临性能降低的问题。 必须升级到受支持的版本才能保持安全性和稳定性。

是否可以继续使用不受支持的语言堆栈或运行时版本?

可以在终止支持后继续使用之前受支持的语言堆栈和 Functions 运行时版本。 但是,必须考虑到不受支持的运行时版本不会收到来自 Microsoft 的更新、安全修补程序或官方支持。 使用已停用的运行时版本时,应用也可能面临性能下降的问题。

如何将函数应用升级到较新的受支持语言堆栈或运行时版本?

若要确保应用与受支持的最新 Functions 运行时版本和语言堆栈的最新版本兼容,请参阅更新 Azure Functions 中的语言堆栈版本

如何检查函数应用正在使用的语言堆栈和运行时版本?

Azure 提供了以下方法来检查函数应用使用的当前运行时版本:

函数应用使用的语言堆栈是根据 FUNCTIONS_WORKER_RUNTIME 应用程序设置的值确定的。 有关详细信息,请参阅使用应用程序设置

若要详细了解如何升级函数应用的语言版本,请参阅以下文章: