Repolode
dbos-inc

dbos-inc/dbos-transact-py

Uma biblioteca Python que adiciona workflows duráveis e filas de tarefas ao seu programa, com o estado salvo em checkpoints no Postgres.

Alternativa open source a:Temporal

Estrelas
1,666
Forks
116
Issues abertas
8
Último commit
há 3 dias

O que é?

DBOS Transact é uma biblioteca Python open source para criar workflows duráveis. Você anota funções comuns como workflows e etapas, e a biblioteca salva o progresso delas em checkpoints no Postgres. Se o processo falhar ou reiniciar, os workflows continuam da última etapa concluída, em vez de começar do zero.

A biblioteca também inclui filas duráveis, agendamento e notificações, tudo com suporte do Postgres. Tarefas enfileiradas a partir de um workflow têm garantia de conclusão e de retorno dos resultados a quem as chamou, mesmo em caso de interrupções. As filas oferecem limites de concorrência, de taxa e de tempo limite, além de deduplicação e priorização. Agendamentos baseados em cron e o sleep durável permitem que os workflows esperem por dias ou semanas.

Não é necessário usar um orquestrador, broker de mensagens ou serviço de filas separado; a única dependência de infraestrutura é um banco de dados Postgres. Os workflows são armazenados como linhas no Postgres, então podem ser consultados, pausados, retomados ou bifurcados a partir de uma etapa específica por meio de uma API client.

Recursos principais

  • 01Salva checkpoints do estado dos workflows e das etapas no Postgres, permitindo que os processos retomem a execução após falhas.
  • 02Filas duráveis de tarefas com limites de concorrência, de taxa e de tempo limite, além de deduplicação e prioridades.
  • 03Agendamento baseado em cron e sleep durável que persiste após reinicializações.
  • 04Notificações e eventos duráveis para pausar workflows até a chegada de uma mensagem.
  • 05Client programático para consultar, pausar, retomar e bifurcar workflows.

Casos de uso

  • Processamento de pagamentos ou pedidos que precisa ser concluído mesmo se os servidores falharem durante a operação.
  • Pipelines de dados de longa duração que retomam a execução a partir de checkpoints, em vez de reiniciar.
  • Operação de agentes de IA que chamam APIs não confiáveis ou não determinísticas.
  • Processamento de webhooks ou mensagens Kafka em segundo plano, exatamente uma vez.

Início rápido

  1. 1

    Siga o guia de início rápido para instalar a biblioteca e conectá-la a um banco de dados Postgres

  2. 2

    Anote suas funções com @DBOS.workflow() e @DBOS.step() para torná-las duráveis

Antes de usar

  • Requer um banco de dados Postgres para armazenar o estado do fluxo de trabalho.
  • É uma biblioteca exclusiva para Python, portanto não oferece suporte a outras linguagens.

Em coleções

Tópicos

Perguntas frequentes

O que é dbos-transact-py?
Uma biblioteca Python que adiciona workflows duráveis e filas de tarefas ao seu programa, com o estado salvo em checkpoints no Postgres. DBOS Transact é uma biblioteca Python open source para criar workflows duráveis. Você anota funções comuns como workflows e etapas, e a biblioteca salva o progresso delas em checkpoints no Postgres. Se o processo falhar ou reiniciar, os workflows continuam da última etapa concluída, em vez de começar do zero.
dbos-transact-py é gratuito? Qual é a licença?
dbos-transact-py é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
dbos-transact-py ainda é mantido?
Manutenção ativa. O último commit de dbos-transact-py foi em 4 de nov. de 2026.
Para que posso usar dbos-transact-py?
Processamento de pagamentos ou pedidos que precisa ser concluído mesmo se os servidores falharem durante a operação. Pipelines de dados de longa duração que retomam a execução a partir de checkpoints, em vez de reiniciar. Operação de agentes de IA que chamam APIs não confiáveis ou não determinísticas. Processamento de webhooks ou mensagens Kafka em segundo plano, exatamente uma vez.
Como instalar dbos-transact-py?
Siga o guia de início rápido para instalar a biblioteca e conectá-la a um banco de dados Postgres Anote suas funções com @DBOS.workflow() e @DBOS.step() para torná-las duráveis
Onde consigo dbos-transact-py?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/dbos-inc/dbos-transact-py

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados