| ▲ | qianli_cs 2 days ago |
| Hello! I'm a co-founder at DBOS here and I'm happy to answer any questions :) |
|
| ▲ | sarahdellysse 2 days ago | parent | next [-] |
| Hi there, I think I might have found a typo in your example class in the github README. In the class's `workflow` method, shouldn't we be `await`-ing those steps? |
| |
|
| ▲ | nahuel0x a day ago | parent | prev | next [-] |
| Can you change the workflow code for a running workflow that already advanced some steps? What support DBOS have for workflow evolution? |
| |
|
| ▲ | ilove196884 2 days ago | parent | prev | next [-] |
| I know this this might sound scripted or can be considered cliche but what is the use case for DBOS. |
| |
| ▲ | qianli_cs 2 days ago | parent [-] | | The main use case is to build reliable programs. For example, orchestrating long-running workflows, running cron jobs, and orchestrating AI agents with human-in-the-loop. DBOS makes external asynchronous API calls reliable and crashproof, without needing to rely on an external orchestration service. |
|
|
| ▲ | peterkelly 2 days ago | parent | prev | next [-] |
| How do you persist execution state? Does it hook into the Python interpreter to capture referenced variables/data structures etc, so they are available when the state needs to be restored? |
| |
| ▲ | KraftyOne 2 days ago | parent [-] | | That work is done by the decorators! They wrap around your functions and store the execution state of your workflows in Postgres, specifically: - Which workflows are executing - What their inputs were - Which steps have completed - What their outputs were Here's a reference for the Postgres tables DBOS uses to manage that state: https://docs.dbos.dev/explanations/system-tables | | |
|
|
| ▲ | mnembrini 2 days ago | parent | prev | next [-] |
| About workflow recovery: if I'm running multiple instance of my app that uses DBOS and they all crash, how do you divide the work of retrying pending workflows? |
| |
|
| ▲ | Dinux 2 days ago | parent | prev | next [-] |
| Hai, really cool project! This is something I can actually use. |
|
| ▲ | gbuk2013 2 days ago | parent | prev [-] |
| FYI the “Build Crashproof Apps” button in your docs doesn’t do anything. |
| |
| ▲ | qianli_cs 2 days ago | parent [-] | | You'll need to click either the Python or TypeScript icon. We support both languages and will add more icons there. | | |
| ▲ | gbuk2013 a day ago | parent [-] | | Thanks the icons work! I was originally looking at the docs to see if there was any information on multi-instance (horizontally scaled) apps. Is this supported? If so, how does that work? | | |
| ▲ | qianli_cs a day ago | parent [-] | | Yeah, DBOS Cloud automatically (horizontally) scales your apps. For self-hosting, you can spin up multiple instances and connect them to the same Postgres database. For fan-out patterns, you may leverage DBOS Queues. This works because DBOS uses Postgres for coordination, rate limiting, and concurrency control. For example, you can enqueue tasks that are processed by multiple instances; DBOS makes sure that each task is dequeued by one instance. Docs for Queues and Parallelism: https://docs.dbos.dev/typescript/tutorials/queue-tutorial |
|
|
|