Version v0.1 · dotnet

Overview

Choose the right provider for durability, distributed execution, and operational fit.

Overview

Provider choice directly determines durability behavior and whether multi-worker distributed execution is possible.

Distributed execution requirement

Distributed execution requires a shared durable database provider.

Workers coordinate run claiming, lease ownership, retries, and recurring state through shared store records.

If the provider is in-memory, there is no shared cross-process state, so distributed execution is not supported.

Retention defaults by provider type

From runtime code defaults:

  • Durable database providers default run retention: 24 hours.
  • In-memory provider default run retention: 1 hour.

These are the effective defaults when Retention.RunRetentionSeconds is not explicitly set.

General guidance

  • Prefer PostgreSQL for most production distributed workloads.
  • Use SQL Server where organizational standards require it.
  • Use MySQL where it is already a first-class platform dependency.
  • Use SQLite for local development or single-instance durable scenarios.
  • Use in-memory for tests, demos, and short-lived local runs.

Quick selection matrix

  • Distributed production: PostgreSQL, SQL Server, or MySQL.
  • Single-instance durable local app: SQLite.
  • Unit/integration test harnesses: In-memory.