Simplifying Durable Workflows with Postgres-Native Orchestration

Durable workflows ensure program reliability through state checkpointing, but traditional external orchestrators create unnecessary architectural overhead. By using Postgres as the primary orchestrator, systems can achieve high scalability and availability while simplifying the tech stack. This approach also enables developers to use standard SQL for real-time monitoring and reduces the security risks associated with adding new infrastructure.
Key Points
- Traditional durable workflows use external orchestrators that add architectural complexity and extra points of failure.
- A Postgres-backed system allows application servers to coordinate directly through database tables and locking mechanisms.
- Using Postgres provides built-in scalability and high availability by leveraging proven features like streaming replication and sharding.
- Observability is simplified because workflow status and history can be analyzed using standard SQL queries.
- Consolidating orchestration into the database reduces the security surface area and simplifies infrastructure management.
Sentiment
The overall sentiment is mixed but leans skeptical. Commenters appreciate the goal of reducing orchestration infrastructure and several endorse DBOS-style transactional workflow state, yet the dominant reaction is that the article risks oversimplifying the reliability, scaling, and tooling demands of durable workflows. The strongest consensus is that Postgres can be a good foundation, but it does not remove the need for a well-designed workflow layer.
In Agreement
- Keeping workflow state in Postgres can be pragmatic when Postgres is already the core operational dependency and the workload does not require extreme scale.
- Atomic enqueueing in the same transaction as business logic is a strong DBOS benefit because it reduces a brittle boundary between application writes and follow-up work.
- SQL-based observability is attractive because teams can inspect workflow state with existing dashboards, queries, and operational habits.
- Avoiding a separate orchestrator can reduce infrastructure cost, vendor exposure, authentication complexity, and the number of critical services to operate.
- For many applications, a database-backed queue, idempotent jobs, or a lightweight workflow library may be enough before introducing a heavier workflow platform.
Opposed
- A simple Postgres queue often grows into a partial workflow engine once teams need retries, cancellation, versioning, routing, leases, heartbeats, replay, migration, timers, and operator tooling.
- SKIP LOCKED and high-churn queue tables can create vacuum, dead tuple, index, and planner problems as worker concurrency and write volume grow.
- The article underplays workflow semantics such as non-serializable state, schema evolution, deployment coordination, and debugging behavior.
- Postgres durability and high availability are not free, especially in cloud environments or under high-throughput workflow event loads.
- Several commenters argue that the core value of workflow systems is the SDK, semantics, and reliability layer, while Postgres is only an implementation detail.