升级 Durable Functions 扩展版本

用户使用 Durable Functions 时遇到的许多问题只需升级到最新版本的扩展即可解决,这通常包含重要的 bug 修复和性能改进。 可以按照本文中的说明获取最新版本的 Durable Functions 扩展。

可以在存储库的 “发布”页 中找到对扩展所做的更改 Azure/azure-functions-durable-extension 。 还可以通过转到“ 发布”页面,单击“ 监视”,然后在 “自定义”上,最后选择“ 发布 ”筛选器,来配置每当有新的扩展版本发布时接收通知:

设置发布通知的步骤 1 的屏幕截图。

设置发布通知的步骤 2 的屏幕截图。

参考最新的 NuGet 包(仅用于 .NET 应用)

.NET 应用可以通过引用最新的 NuGet 包来获取最新版本的 Durable Functions 扩展:

如果使用 Netherite 或 MSSQL 存储提供程序 (而不是 Azure 存储),则需要引用以下任一项:

升级扩展捆绑包

扩展捆绑包 为 non-.NET 函数应用引用和使用各种 Azure 函数触发器和绑定提供了一种简单便捷的方法。 例如,如果需要在每次触发函数时向事件中心发送消息,则可以使用事件中心扩展获取对事件中心绑定的访问权限。 Durable Functions 扩展还包含在每个版本的扩展捆绑包中。 使用任何受支持的开发工具创建函数应用时,会在 host.json 中自动配置扩展捆绑包。

大多数 non-.NET 应用程序依赖于扩展捆绑包来访问各种触发器和绑定。 最新的捆绑包版本通常包含最新版本的 Durable Functions 扩展,其中包含关键的 bug 修复和性能改进。 因此,应用使用最新版本的扩展捆绑包非常重要。 可以检查 host.json 文件,查看所使用的版本范围是否包括最新的扩展捆绑包版本。

手动升级 Durable Functions 扩展

如果升级扩展捆绑包无法解决问题,并且你注意到 Durable Functions 扩展的较新版本包含问题的潜在修补程序,则可以尝试手动升级扩展本身。 请注意,这仅适用于复杂场景或需要紧急修复的情况,因为手动管理扩展存在许多缺陷。 例如,当使用的扩展彼此不兼容时,可能需要处理 .NET 错误。 你还需要为了获取最新的修复和补丁手动升级扩展,而不是通过扩展捆绑包自动获取它们。

首先,从 host.json 文件中删除 extensionBundle 该节。

如果尚未安装,请安装 dotnet CLI。 可以从 此页面获取它。

由于应用程序通常使用多个扩展,因此建议运行以下命令以手动安装扩展捆绑包支持的所有扩展的所有最新版本:

func extensions install

但是,如果 只想 安装最新的 Durable Functions 扩展版本,将运行以下命令:

func extensions install -p Microsoft.Azure.WebJobs.Extensions.DurableTask -v <version>

例如:

func extensions install -p Microsoft.Azure.WebJobs.Extensions.DurableTask -v 2.9.1