Repolode
dbos-inc

dbos-inc/dbos-transact-py

Библиотека Python, которая добавляет в приложение надёжные рабочие процессы и очереди задач с сохранением состояния в Postgres.

Open source альтернатива:Temporal

Звёзды
1,667
Форки
116
Открытые issues
8
Последний коммит
4 дня назад

Что это?

DBOS Transact — библиотека Python с открытым исходным кодом для создания надёжных рабочих процессов. Вы помечаете обычные функции как рабочие процессы и шаги, а библиотека сохраняет их состояние в Postgres. Если процесс аварийно завершится или перезапустится, рабочие процессы продолжатся с последнего выполненного шага, а не начнутся заново.

В библиотеку также входят надёжные очереди, планировщик и уведомления — всё это работает на базе Postgres. Задачи, поставленные в очередь из рабочего процесса, гарантированно выполняются и возвращают результат вызывающему коду, даже при перебоях. Очереди поддерживают ограничение параллелизма и частоты запросов, тайм-ауты, дедупликацию и приоритизацию. Расписания на основе Cron и надёжный sleep позволяют рабочим процессам ждать дни и недели.

Отдельный оркестратор, брокер сообщений или сервис очередей не нужны: единственная зависимость от инфраструктуры — база данных Postgres. Рабочие процессы хранятся в Postgres в виде строк, поэтому их можно запрашивать, приостанавливать, возобновлять и разветвлять с конкретного шага через клиентский API.

Ключевые возможности

  • 01Сохраняет состояние рабочих процессов и шагов в Postgres, чтобы процессы могли продолжить работу после сбоев.
  • 02Надёжные очереди задач с ограничением параллелизма и частоты запросов, тайм-аутами, дедупликацией и приоритетами.
  • 03Планирование на основе Cron и надёжный sleep, сохраняющий состояние после перезапусков.
  • 04Надёжные уведомления и события, позволяющие приостанавливать рабочие процессы до получения сообщения.
  • 05Программный клиент для запросов, приостановки, возобновления и разветвления рабочих процессов.

Сценарии использования

  • Обработка платежей или заказов, которая должна завершиться, даже если серверы аварийно завершат работу в середине операции.
  • Длительные конвейеры обработки данных, которые продолжаются с контрольных точек, а не запускаются заново.
  • Работа с AI-агентами, вызывающими ненадёжные или недетерминированные API.
  • Фоновая обработка вебхуков или сообщений Kafka с гарантией однократного выполнения.

Быстрый старт

  1. 1

    Следуйте краткому руководству, чтобы установить библиотеку и подключить её к базе данных Postgres

  2. 2

    Добавьте к функциям аннотации @DBOS.workflow() и @DBOS.step(), чтобы обеспечить их долговечность

Что важно знать

  • Для хранения состояния рабочего процесса требуется база данных Postgres.
  • Это библиотека только для Python, поэтому другие языки не поддерживаются.

В подборках

Темы

Частые вопросы

Что такое dbos-transact-py?
Библиотека Python, которая добавляет в приложение надёжные рабочие процессы и очереди задач с сохранением состояния в Postgres. DBOS Transact — библиотека Python с открытым исходным кодом для создания надёжных рабочих процессов. Вы помечаете обычные функции как рабочие процессы и шаги, а библиотека сохраняет их состояние в Postgres. Если процесс аварийно завершится или перезапустится, рабочие процессы продолжатся с последнего выполненного шага, а не начнутся заново.
dbos-transact-py можно использовать бесплатно? Какая у него лицензия?
dbos-transact-py распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
dbos-transact-py всё ещё поддерживается?
Активно поддерживается. Последний коммит в dbos-transact-py — 4 нояб. 2026 г..
Для чего можно использовать dbos-transact-py?
Обработка платежей или заказов, которая должна завершиться, даже если серверы аварийно завершат работу в середине операции. Длительные конвейеры обработки данных, которые продолжаются с контрольных точек, а не запускаются заново. Работа с AI-агентами, вызывающими ненадёжные или недетерминированные API. Фоновая обработка вебхуков или сообщений Kafka с гарантией однократного выполнения.
Как установить dbos-transact-py?
Следуйте краткому руководству, чтобы установить библиотеку и подключить её к базе данных Postgres Добавьте к функциям аннотации @DBOS.workflow() и @DBOS.step(), чтобы обеспечить их долговечность
Где скачать dbos-transact-py?
Исходный код и инструкции по установке — на GitHub: https://github.com/dbos-inc/dbos-transact-py

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Temporal — платформа надёжного выполнения, сервер которой запускает рабочие процессы приложения и автоматически повторяет неудачные операции.

24,2 тыс.+139 за неделю2,1 тыс.GoMITАктивно поддерживаетсяОбновлён вчера

Движок оркестрации фоновых задач, AI-агентов и долговечных рабочих процессов с SDK для Python, TypeScript, Go и Ruby и Postgres в качестве слоя надёжного хранения.

8,2 тыс.+30 за неделю535GoMITАктивно поддерживаетсяОбновлён 24 часа назад

Python-фреймворк для оркестрации рабочих процессов: превращает скрипты в промышленные конвейеры данных с расписанием, повторами, кэшированием и автоматизацией на основе событий.

24,1 тыс.+21 за неделю2,6 тыс.PythonApache-2.0Обновлён 24 часа назад

Restate — среда выполнения для создания отказоустойчивых приложений с долговечным выполнением, надежной передачей сообщений и состоянием, сохраняющимися при сбоях инфраструктуры.

4,7 тыс.+44 за неделю232RustOtherОбновлён 24 часа назад