workflow-automation
构建持久化工作流自动化系统
不再让工作因网络故障和超时而丢失。学习使用持久化执行平台构建可靠、容错的工作流,能够承受重启并优雅地处理错误。
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“workflow-automation”。 比较 Temporal 和 Inngest 在 TypeScript 编写的支付处理系统中的差异
预期结果:
对于 TypeScript 支付系统,我推荐 Inngest 以加快开发速度。Temporal 提供更多控制但需要基础设施管理。Inngest 提供托管式可靠性和基于 SDK 的开发。关键权衡:Temporal 更好地处理复杂状态机工作流,而 Inngest 擅长事件驱动的简洁性。两者都提供持久化执行,但 Inngest 的开发者上手速度更快。
正在使用“workflow-automation”。 当工作流重试时,如何防止重复扣费客户?
预期结果:
始终在首次支付尝试前生成唯一的幂等性键。将此键与每次支付请求一起发送到支付处理器。如果工作流使用相同的键重试,处理器将识别重复请求并返回原始结果而非再次扣费。将键与交易记录一起存储,设置幂等性有效期(通常为 24-48 小时)。
正在使用“workflow-automation”。 我的 n8n 工作流在调用慢速 API 时总是超时
预期结果:
永远不要直接从工作流调用慢速 API。相反,使用编排器 - 工作者模式:工作流将作业分派给工作者服务,由工作者异步进行 API 调用。工作者通过 webhook 或事件将结果回传。为所有 HTTP 节点设置超时(通常 30-60 秒)。对于非常慢的操作,实现带指数退避间隔的轮询。
安全审计
安全All static analysis findings are false positives. The 'backtick execution' detection refers to Markdown code formatting in documentation text, not actual Ruby/shell commands. The 'weak cryptography' detection refers to the word 'execution' in documentation context, not cryptographic implementation. This skill contains only documentation about workflow automation patterns with no executable code, security risks, or prompt injection attempts.
质量评分
你能构建什么
支付处理系统
设计容错支付工作流,处理网络故障、优雅超时,并使用幂等性键防止重复扣费。
数据管道编排
协调多步骤 ETL 工作流,支持并行处理、错误恢复和基于检查点的恢复,适用于长时间运行的数据任务。
微服务集成
实现事件驱动的工作流,使用 saga 模式协调多个服务,支持分布式事务和自动回滚。
试试这些提示
我需要为 [用例] 构建 [工作流类型]。我的团队具有 [技能水平] 经验,优先级是 [优先级]。比较 Temporal、Inngest、n8n 和 AWS Step Functions 在此场景下的优劣。推荐最合适的方案并解释权衡。
我正在构建 [工作流类型],需要调用 [外部服务/API]。我应该如何实现幂等性?展示生成和验证幂等性键的模式,并说明存储位置。
为可能因 [错误类型] 失败的 [操作类型] 设计重试策略。配置指数退避、最大重试次数和回退行为。展示如何在 [平台名称] 中构建此结构。
我有一个执行 [复杂流程] 的单体工作流。它难以调试且经常从头开始重启。帮我将其拆分为更小的、带检查点的步骤,并在它们之间保持持久化状态。
最佳实践
- 始终为外部 API 调用使用幂等性键,防止重试时的重复操作
- 为所有活动和外部服务调用设置明确的超时,防止工作流挂起
- 将长工作流拆分为带检查点状态的小步骤,以便更快地从故障中恢复
- 为重试实现带抖动的指数退避,避免压垮下游服务
避免
- 不要在工作流代码中直接执行 I/O 操作或副作用——始终委托给活动或工作者
- 永远不要构建试图在一个地方完成所有工作的单体工作流;它们会变得难以调试且无法高效重试
- 避免将大型数据负载作为工作流参数传递——将数据存储在外部的同时传递引用