Temporal

活跃
GitHub Go MIT

简介

Temporal 是一个分布式可靠的持久执行平台,通过自动重试和状态管理把 Agent 工作流从临时脚本升级为可观测的生产系统。

核心特性

  • 持久工作流执行 — 工作流以事件溯源方式持久化存储,进程崩溃后可从中断点恢复执行
  • 自动重试与超时 — 内置可配置的重试策略、超时和指数退避机制,无需手写容错代码
  • 多语言 SDK — 提供 Go、Java、TypeScript、Python、.NET、PHP 等官方 SDK
  • 活动子工作流 — 支持 Activity、子工作流、Saga、补偿等组合模式
  • 可视化与历史回放 — 通过 Web UI 查看工作流执行历史、状态和调用栈
  • 跨服务事务 — 通过 Saga/Compensation 模式保障分布式事务一致性

适用场景

💡 在生产环境中可靠地编排多步 LLM Agent 任务,自动处理网络超时和模型限流
💡 用代码而非 YAML 定义长时运行的工作流,支持跨天甚至跨周的执行跨度
💡 通过 Activity 调用外部 API 并自动重试失败请求
💡 把多个微服务编排成 Saga 模式,自动补偿失败的下游调用
💡 通过 Web UI 回放任意历史工作流执行以排查问题

优势与不足

优势

  • 活跃维护,近期持续更新
  • 社区热度高(22.3k stars)
  • 开源许可证友好(MIT)

快速开始

# 启动本地 Temporal 开发服务器
brew install temporal
temporal server start-dev

# 安装 Go SDK
go get go.temporal.io/sdk

# 编写一个简单的工作流(workflow.go)
package workflow
import (
    "time"
    "go.temporal.io/sdk/workflow"
)
func GreetingWorkflow(ctx workflow.Context, name string) (string, error) {
    ao := workflow.ActivityOptions{StartToCloseTimeout: time.Second * 10}
    ctx = workflow.WithActivityOptions(ctx, ao)
    var result string
    err := workflow.ExecuteActivity(ctx, ComposeGreeting, name).Get(ctx, &result)
    return result, err
}

# 启动 Worker 并发起工作流执行
go run worker/main.go
temporal workflow start --task-queue greeting-tasks --type GreetingWorkflow --input '"World"'

相关项目

Hatchet

7.7k · Go
活跃 A+

Go 编写的持久化工作流与后台任务编排引擎,专为 AI Agent 与 DAG 工作负载设计。

workfloworchestrationdurable-execution +1
  • · 持久化工作流 — 支持暂停/恢复、事件等待和自动故障恢复的容错长时间运行任务
  • · DAG 编排 — 使用有向无环图构建数据管道和复杂工作流
  • · 多语言 SDK — 为 Python、TypeScript、Go 和 Ruby 应用提供一等支持

Argo Workflows

16.9k · Go
活跃 A

Argo Workflows 是面向 Kubernetes 的开源容器原生工作流引擎,可用于编排 AI Agent 任务与多步骤流水线。

workflowkubernetesorchestration +1
  • · 容器原生工作流 — 每个 step 都在独立容器中运行,环境隔离且可复现
  • · DAG 与步骤编排 — 支持有向无环图、并行分支、循环、退出钩子和重试
  • · 多种执行模式 — 包括容器、脚本、Suspend/Resume 和资源模板

Conductor

32.1k · Java
活跃 A+

事件驱动的仲载编排平台,为应用程序和 AI Agent 提供持久化和高弹性的执行引擎。

orchestrationworkflow-enginedistributed-systems +2
  • · 持久化执行 — 每个步骤持久化存储,支持崩溃恢复、重试和超时配置
  • · 动态工作流 — 运行时动态创建 Fork、任务和子工作流,LLM 可生成 JSON 工作流定义并立即执行
  • · AI Agent 编排 — 内置 14+ LLM 提供商、MCP 工具调用、函数调用和人类审批工作流