Durable Functions
Definition
An Azure Functions extension for writing stateful, long-running workflows in code, enabling complex orchestration and event-driven applications.
Use Cases
- Microsoft: Serverless order processing and human approval workflows in Azure reference architectures and samples — Microsoft documents Durable Functions patterns such as function chaining, fan-out/fan-in, async HTTP APIs, and human interaction to build workflows that wait for approvals, call external services, and resume from saved state. (These patterns reduce custom state-management code, simplify long-running workflow development, and allow workflows to survive restarts or scale events.)
- KPMG: Document and business process automation on Azure — KPMG has publicly described using Azure serverless services, including Azure Functions, to automate enterprise processes. Durable Functions is commonly used in these Azure automation scenarios to coordinate multi-step tasks, approvals, and integrations. (The approach helps shorten processing times, improve consistency, and reduce manual operational work.)
- Maersk: Event-driven backend workflows and integration processes on Azure — Maersk has shared Azure modernization work using serverless and event-driven services. In these architectures, Durable Functions fits as the orchestration layer for long-running, stateful processes that span APIs, queues, and human actions. (This style of implementation improves resilience, supports asynchronous processing, and helps teams deliver workflow automation faster.)
Provider Equivalents
- AWS: AWS Step Functions
- Azure: Azure Durable Functions
- GCP: Google Cloud Workflows
- OCI: Oracle Cloud Infrastructure Application Integration
Frequently Asked Questions
- What's the difference between Durable Functions and Azure Functions?
- Azure Functions runs individual stateless functions in response to events such as HTTP requests, timers, or queue messages. Durable Functions adds orchestration and state management on top of Azure Functions, so you can build workflows that pause, wait, retry, branch, or run for a long time without manually storing state yourself.
- When should I use Durable Functions?
- Use Durable Functions when your process has multiple steps, needs to keep track of progress, or must wait between steps. Common examples include approval workflows, order processing, scheduled reminders, fan-out data processing, and API workflows that take minutes or hours to finish. If your logic is a single short task with no saved state, regular Azure Functions is usually simpler.
- How much does Durable Functions cost?
- Cost depends on the Azure Functions hosting plan and the amount of execution and storage used. On the Consumption plan, you typically pay for function executions, execution time, and memory, plus storage transactions because Durable Functions stores orchestration history and state in a backing store such as Azure Storage. Long-running workflows can be cost-effective because they do not need a server running continuously, but very chatty workflows with many steps or state updates can increase storage and execution costs.
Category: software
Difficulty: advanced
Related Terms
See Also