The Durable Task Framework (DTFx) supports multiple backend storage providers. This guide helps you choose the right one for your needs.
For most new projects, we recommend the Durable Task Scheduler—a fully managed Azure service that eliminates infrastructure management and provides the best developer experience.
| Feature | Durable Task Scheduler | Azure Storage | MSSQL | Service Bus | Service Fabric | Emulator |
|---|---|---|---|---|---|---|
| Type | ⭐ Managed service | Self-managed | Self-managed | Self-managed | Self-managed | In-memory |
| Production ready | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No |
| Azure support SLA | ✅ Yes | ❌ No | ❌ No | ❌ No | ❌ No | ❌ No |
| Infrastructure | None required | Storage account | SQL Server database | Service Bus namespace | Service Fabric cluster | None |
| Throughput | Very high | Moderate+ | Moderate+ | Moderate | Unknown | N/A |
| Latency | Low | Moderate | Low | Moderate+ | Unknown | Very low |
| Built-in dashboard | ✅ Yes | ❌ No | ❌ No | ❌ No | ❌ No | ❌ No |
| Managed identity | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | N/A | N/A |
| Local emulator | ✅ Docker | N/A | ✅ SQL Server | N/A | N/A | ✅ Built-in |
| Cost model | Fixed monthly or per-operation | Storage transactions | Database DTUs/vCores | Messaging units | Cluster nodes | Free |
Best for:
- ✅ New projects and greenfield development
- ✅ Production workloads requiring enterprise support
- ✅ Teams that want to minimize operational overhead
- ✅ High-throughput scenarios
- ✅ Applications needing built-in monitoring
Considerations:
- Requires Azure subscription
- Cost based on operations (see pricing)
👉 Get started with Durable Task Scheduler
Best for:
- ✅ Existing Azure Storage deployments
- ✅ Cost-sensitive workloads with moderate throughput
- ✅ Scenarios requiring data residency control
- ✅ Teams already managing Azure Storage infrastructure
Considerations:
- Throughput limited by Azure Storage transaction limits
- Requires management of storage account, queues, tables, and blobs
- No built-in monitoring dashboard
👉 Get started with Azure Storage
Best for:
- ✅ Non-Azure or hybrid deployments
- ✅ Teams with existing SQL Server expertise
- ✅ Scenarios requiring direct database queries against orchestration state
- ✅ Environments with strict BCDR requirements
Considerations:
- Requires management of SQL Server database
- State is stored in indexed tables with stored procedures for direct querying
- Available for Azure SQL Database, SQL Server, or any compatible MSSQL database
Best for:
- ✅ Existing Service Bus deployments
- ✅ Low(er)-latency message delivery requirements
Considerations:
- Requires management of Service Bus namespace
- Tracking store requires separate Azure Storage account
👉 Get started with Service Bus
Best for:
- ✅ Existing Service Fabric clusters
- ✅ Integration with Service Fabric stateful services
Considerations:
- Requires Service Fabric cluster management
- Tightly coupled to Service Fabric ecosystem
👉 Get started with Service Fabric
Best for:
- ✅ Local development and testing
- ✅ Unit tests and integration tests
- ✅ Learning and experimentation
Considerations:
- In-memory only—data is lost on restart
- Not suitable for production use
- Single-process only
Warning: Netherite is being deprecated and is not recommended for new projects.
Netherite is an ultra-high performance backend developed by Microsoft Research that uses Azure Event Hubs and Azure Page Blobs with FASTER database technology.
Considerations:
⚠️ Being deprecated—not recommended for new projects- More complex infrastructure requirements (Event Hubs + Azure Storage)
- Consider migrating to Durable Task Scheduler for similar performance characteristics
Each provider stores orchestration state differently, so migrating between providers requires:
- Completing or terminating all running orchestrations
- Reconfiguring the application with the new provider
- Restarting orchestrations from scratch
There is no built-in state migration tool between providers.
- For enterprise support, choose Durable Task Scheduler
- For non-Azure deployments, choose MSSQL
- For lowest cost, choose Azure Storage
- For local testing, choose Emulator
See Support for more information about getting help.