Durable Functions 拡張機能のバージョンをアップグレードする

ユーザーが Durable Functions で経験する多くの問題は、拡張機能の最新バージョンにアップグレードするだけで解決できます。ここには多くの場合、重要なバグ修正とパフォーマンスの向上が含まれています。 この記事の手順に従って、Durable Functions 拡張機能の最新バージョンを取得できます。

拡張機能の変更内容は、Azure/azure-functions-durable-extension リポジトリの [リリース] ページにあります。 [リリース] ページに移動し、[ウォッチ][カスタム] の順にクリックし、最後に [リリース] フィルターを選択することで、新しい拡張機能のリリースがあるたびに通知を受信するように構成することもできます。

Screenshot of step 1 to set up release notifications.

Screenshot of step 2 to set up release notifications.

最新の NuGet パッケージを参照する (.NET アプリのみ)

.NET アプリでは、最新の NuGet パッケージを参照することで、Durable Functions 拡張機能の最新バージョンを取得できます。

Netherite または MSSQL ストレージ プロバイダー (Azure Storage ではなく) を使用している場合は、次のいずれかを参照する必要があります。

拡張機能バンドルをアップグレードする

拡張機能バンドルには、.NET 以外の関数アプリでさまざまな Azure 関数トリガーとバインドを参照して使用するための簡単で便利な方法が用意されています。 たとえば、関数がトリガーされるたびに Event Hubs にメッセージを送信する必要がある場合は、Event Hubs 拡張機能を使用して Event Hubs バインドにアクセスできます。 Durable Functions 拡張機能も拡張機能バンドルの各バージョンに含まれています。 拡張機能バンドルは、サポートされている開発ツールのいずれかを使用して関数アプリを作成するときに、host.json で自動的に構成されます。

ほとんどの .NET 以外のアプリケーションは、拡張機能バンドルに依存して、さまざまなトリガーとバインドにアクセスします。 最新のバンドル リリースには多くの場合、重要なバグ修正とパフォーマンスの向上を備えた最新バージョンの Durable Functions 拡張機能が含まれています。 そのため、アプリで最新バージョンの拡張機能バンドルを使用することが重要です。 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