dbos-inc/dbos-transact-ts
Database-Backed Durable TypeScript Workflows
What it solves
DBOS Transact provides a way to make TypeScript programs reliable and fault-tolerant without requiring a separate, heavyweight orchestration server. It solves the problem of managing complex state and recovery logic when applications face server crashes or interrupted long-running processes, such as payment services or data pipelines.
How it works
DBOS uses a Postgres database to checkpoint the state of a program. By registering ordinary functions as "workflows" and "steps," developers can ensure that if a program fails, it automatically resumes from the last completed step upon restart. It eliminates the need for external task queues or orchestrators by implementing the durability logic directly within a library.
Who it’s for
Developers building applications that require high reliability, such as those managing financial transactions, data pipelines, or AI agents that rely on non-deterministic or unreliable external APIs.
Highlights
- Durable Workflows: Automatically resumes execution from the last checkpoint in Postgres after a failure.
- Durable Queues: Background task execution with flow control, rate limiting, and deduplication, backed by Postgres.
- Programmatic Management: Ability to query, pause, resume, or fork failed workflows directly via Postgres tables.
- Exactly-Once Processing: Built-in support for idempotency keys to ensure events are processed exactly once.
- Durable Scheduling: Support for cron-based scheduling and long-term "durable sleep" that persists through restarts.
- Durable Notifications: Exactly-once semantics for sending and receiving notifications to pause or resume workflows.
Related
- Project
- Project
- Project
- Project
- Project