SuperAPI AI 工具集

cloudflare-workflows

部署与运维

查看项目

更新于 10-16 03:14

技能介绍

用途:在 Cloudflare Workers 上构建持久、长时间运行的工作流,实现多步骤编排、自动重试与状态持久化。

主要能力:工作流类需继承 WorkflowEntrypoint 并实现 run(event, step)。步骤方法包括 step.do(执行工作并支持重试配置)、step.sleep(相对休眠)、step.sleepUntil(休眠到指定时间)、step.waitForEvent(等待外部事件,默认超时 24 小时)。步骤返回值必须可 JSON 序列化。重试配置支持 limit、delay、backoff(constant/linear/exponential)与 timeout;未配置时默认重试 5 次、延迟 10 秒、指数退避、超时 10 分钟。可用 NonRetryableError 立即失败,也可用 try-catch 让可选步骤失败后继续。

使用方式:可用模板创建项目:npm create cloudflare@latest my-workflow -- --template cloudflare/workflows-starter --git --deploy false。在 wrangler.jsonc 的 workflows 中配置 name、binding、class_name。部署用 npm run deploy;查看实例用 npx wrangler workflows instances list my-workflow,查看状态用 npx wrangler workflows instances describe my-workflow <instance-id>。Worker 中通过 env.MY_WORKFLOW.create({ params }) 创建实例,get(id) 获取实例,status() 查询状态,sendEvent() 发送事件,并支持 pause、resume、terminate。

适用场景:订单与支付流程、视频处理等长时任务、定时任务、等待 Webhook 或用户输入后继续的流程。

限制:资料未提供定价、配额、区域可用性等细节;步骤返回值不可包含函数、Symbol、循环引用或 undefined;waitForEvent 超时会抛错,需自行捕获处理。