Vercel News

Configure where run state lives in Vercel Workflows

8.5内容质量

TL;DR · AI 摘要

Vercel Workflows 现支持配置运行状态存储区域,提升区域故障时的容错能力。通过绑定运行生命周期到指定区域,实现输出流和队列消息的本地化处理。

核心要点

  • 配置运行区域可使输出流和队列消息在本地处理,降低延迟
  • 需升级至 workflow@5.0.0-beta.33 及以上版本
  • 区域故障时自动切换到最近区域,保障服务连续性

结构提纲

按章节快速跳转。

  1. 介绍 Workflows 新增的运行区域配置能力及其技术价值

  2. 运行生命周期绑定到指定区域,确保处理、检查点和输出流本地化

  3. 区域故障时自动切换到最近区域,无需代码变更或迁移

  4. 要求使用 workflow@5.0.0-beta.33 及以上版本实现新特性

  5. 通过 start() 方法的 region 参数指定目标区域(如 sfo1

  6. 提供 Workflows 官方文档链接获取完整配置说明

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • Vercel Workflows 区域配置
    • 核心功能
      • 运行区域绑定
      • 故障自动转移
    • 实现方式
      • SDK 版本要求
      • region 参数配置
    • 技术价值
      • 降低延迟
      • 提升容错性

金句 / Highlights

值得收藏与分享的关键句。

#Vercel#Workflows#云服务#区域配置
打开原文

在 Vercel Workflows 中配置运行状态的存储位置 - Vercel

Vercel Workflows 现在将每个运行的运行状态、队列调度和输出流统一存储在单一的主区域:默认的启动区域,或您选择的任意目标区域。

运行在其生命周期内会保留主区域设置,因此对于基于 Workflows 构建的代理,整个处理流程都会靠近用户:服务于悉尼用户的代理会在悉尼执行、保存检查点并从悉尼流式传输输出。在区域性事件发生时,工作流流量会自动切换到最近的下一个区域。

要开始使用,请将 Workflow SDK 升级到 workflow@5.0.0-beta.33 或更高版本:

code
pnpm
i workflow@beta

安装 Workflow SDK 的最新测试版。

要将运行固定到特定区域,请向 start() 传递 region 参数:

app/api/start-workflow/route.ts

code
1
import
{
start
}
from
'workflow/api'
;
2
import
{
myWorkflow
}
from
'@/workflows/my-workflow'
;
3
4
const
run
=
await
start
(
myWorkflow
,
[
input
]
,
{
region
:
'sfo1'
}
)
;

将运行数据存储在 sfo1 区域,并从该区域发送队列消息。

现有工作流在下一次运行时会自动应用区域分配设置,无需迁移或代码修改。

了解更多请参阅 Workflows 文档。

贡献者

Karthik Kalyanaraman , Peter Wielander , Ben Sabic