Durable Functions は、.NET、Node.js、Python など、すべてのファースト パーティの Azure Functions ランタイム環境で使用できます。 そのため、サポートされる各言語ランタイム用に複数の Durable Functions SDK とパッケージがあります。 このガイドでは、サポートされる各ランタイムの観点から、それぞれの Durable Functions パッケージについて説明します。
.NET インプロセス
.NET インプロセス ユーザーが Durable Functions を使用するには、Microsoft.Azure.WebJobs.Extensions.DurableTask パッケージを .csproj
ファイル内で参照する必要があります。 このパッケージは、Durable Functions の "WebJobs 拡張機能" として知られています。
ストレージ プロバイダー パッケージ:
既定では、Durable Functions は Azure Storage をバッキング ストアとして使用します。 ただし、代替のストレージ プロバイダーも利用可能です。 これらを使用するには、 の WebJobs 拡張機能に.csproj
、それらのパッケージを参照する必要があります。 パッケージには次のようなものがあります。
- Netherite ストレージ プロバイダー: Microsoft.Azure.DurableTask.Netherite.AzureFunctions。
- The MSSQL ストレージ プロバイダー: Microsoft.DurableTask.SqlServer.AzureFunctions
ヒント
各バックエンドを構成する方法についてはストレージ プロバイダーに関するガイドを参照してください。
.NET 分離
.NET 分離ユーザーが Durable Functions を使用するには、Microsoft.Azure.Functions.Worker.Extensions.DurableTask パッケージを .csproj
ファイル内で参照する必要があります。 .NET 分離プロジェクトは WebJobs パッケージを直接参照できないため、これは .NET インプロセスで使用される "WebJobs "拡張機能に置き換えられます。 このパッケージは、Durable Functions の "worker 拡張機能" として知られています。
ストレージ プロバイダー パッケージ:
.NET 分離では、代替のストレージ プロバイダーも、独自の "worker 拡張機能" パッケージで利用できます。
の worker 拡張機能に.csproj
、それらのパッケージを参照する必要があります。 パッケージには次のようなものがあります。
- Netherite ストレージ プロバイダー: Microsoft.Azure.Functions.Worker.Extensions.DurableTask.Netherite。
- MSSQL ストレージ プロバイダー: Microsoft.Azure.Functions.Worker.Extensions.DurableTask.SqlServer
ヒント
各バックエンドを構成する方法についてはストレージ プロバイダーに関するガイドを参照してください。
拡張機能バンドル ユーザー
Extension バンドル (.NET 以外のユーザーに推奨される Azure Functions 拡張機能の管理メカニズム) のユーザーは、各言語ランタイムの Durable Functions SDK のみインストールする必要があります。 各ファーストパーティ言語の SDK は、以下の表に一覧表示されています。
- Node (JavaScript / TypeScript): durable-functions npm パッケージ。
- Python: azure-functions-durable PyPI パッケージ。
- Java: durabletask-azure-functions Maven パッケージ。
- PowerShell: 現在の GA SDK は Azure Functions PowerShell 言語ワーカーに組み込まれているため、インストールは必要ありません。 詳しくは、次の注を参照してください。
注
PowerShell ユーザーの場合: PowerShell ギャラリーの AzureFunctions.PowerShell.Durable.SDK に、プレビュー SDK スタンドアロン パッケージがあります。 将来的には後者が優先されます。
GitHub リポジトリ
Durable Functions は OSS としてオープンに開発されています。 ユーザーは、開発、機能の要求、および適切なリポジトリの問題の報告に貢献することを歓迎します。
GitHub リポジトリ | 説明 |
---|---|
azure-functions-durable-extension | .NET インプロセス ライブラリと Azure Storage ストレージ プロバイダー |
durabletask-dotnet | .NET 分離ワーカー プロセス ライブラリ |
azure-functions-durable-js | Node.js SDK |
azure-functions-durable-python | Python SDK |
durabletask-java | Java SDK |
Azure Functions Durable Powershell | PowerShell SDK |
durabletask-netherite | Netherite ストレージ プロバイダー |
durabletask-mssql | MSSQL ストレージ プロバイダー |