Skip to content
dev
Switch branches/tags
Code

Files

Permalink
Failed to load latest commit information.

Durable Functions

Build status Build Status

Durable Functions is an extension that helps developers build reliable, stateful apps on the Azure Functions platform.

This extension adds three new types functions to the Azure Functions family:

  • Orchestrator functions: Long-running, reliable workflow functions written in code that schedule and coordinate other functions.
  • Activity functions: Stateless functions that are the basic unit of work in a durable function orchestration.
  • Entity functions: Stateful actor-like functions that have identities and store state explicitly.

Durable Functions can run anywhere that Azure Functions can run, including in the Azure Functions "Serverless" Consumption plan, the Elastic Premium plan, on Kubernetes, or even locally for development using Visual Studio or Visual Studio Code.

📑 Official documentation 📑

For a more detailed overview, including examples of what you can do with Durable Functions, see our What is Durable Functions? article.

NuGet Packages

Durable Functions updates are published as NuGet packages.

Package Name NuGet
Microsoft.Azure.WebJobs.Extensions.DurableTask NuGet
Microsoft.Azure.WebJobs.Extensions.DurableTask.Analyzers (C# only) NuGet

Language support

Durable Functions supports a subset of languages supported by Azure Functions:

Language Status Repo
C# Generally available - get started Azure/azure-functions-durable-extension
JavaScript Generally available - get started Azure/azure-functions-durable-js
Python Generally available - get started Azure/azure-functions-durable-python
PowerShell Public preview - get started Azure/azure-functions-powershell-worker
Java Under consideration - give feedback

Each language has its own language-specific SDK and programming model. Regardless of which language you use, the extension in this repo must be installed to enable the Durable Functions triggers.

Installation

The Durable Functions NuGet package can be referenced directly in a Visual Studio project or can be installed using the Azure Functions Core Tools command-line:

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

Durable Functions is also available in supported extension bundles. Note that extension bundles are only supported for non-.NET languages.

Contributing

Many features of Durable functions have been voluntarily contributed by the community, and we always welcome such contributions. If you are interested in contributing, please take a look at our CONTRIBUTING guide.

License

This project is licensed under the MIT License.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.