durable-workflow/workflow

Core package for defining and running durable workflows and activities. Supports long-running persistent workflows, retries, queues, parallel execution, workflow monitoring, dedicated storage connections, and orchestration for microservices, data pipelines, sagas, agentic workflows, and other complex business processes.

解决的问题

Durable Workflow 允许开发人员将长时间运行的流程编写为普通的 PHP 代码,这些代码能够在 Worker 重启、应用部署和主机故障中存活下来。它通过记录已完成的工作并从中断的地方恢复执行,而不重复已完成的操作,从而防止复杂工作流中的进度丢失。

工作原理

该项目为 Laravel 提供了一个嵌入式运行时,它使用应用程序现有的队列、缓存和数据库进行持久化。它记录了工作流和活动的执行历史记录,允许运行时重放代码,以便在故障后恢复执行。它可以作为嵌入式 Laravel 包、自托管服务器或通过托管云服务进行部署。

适用人群

需要在重启和故障期间保持状态持久化,以构建可靠且长时间运行的编排流程的 PHP 和 Laravel 开发人员。

亮点

  • 在单个 Laravel 应用程序中拥有自己的持久化和队列执行
  • 支持计时器、信号、查询、更新、子工作流和 Sagas
  • 能够在不重复已完成操作的情况下恢复执行
  • 灵活的部署选项,包括嵌入式、自托管,以及通过 SDK 支持多语言 (PHP, Python, Rust)

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目