标准工作流程与快速工作流程 - Amazon Step Functions
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

标准工作流程与快速工作流程

创建状态机时,选择 “标准” 或 “速” 类型。状态机的默认类型标准类型为标准的状态机称为标准工作流类型为 Express 的状态机称为 Exp ress 工作流

对于 Standard 和 Express 工作流程,您可以使用定义状态机Amazon States Language。根据您选择的类型,状态机执行的行为会有所不同。

重要

创建状态机后,无法更改您选择的类型

注意

如果您在 Step Functions 控制台之外定义状态机,例如在您选择的编辑器中,则必须使用扩展名 .asl.json 保存状态机定义。

标准工作流程非常适合长时间运行(长达一年)、经久耐用且可审计的工作流程。在执行完成后 90 天内,您可以使用 Step Functions API 检索完整的执行历史记录。标准工作流遵循完全一次的模型,除非您在 ASL 中指定了Retry行为,否则您的任务和状态永远不会多次运行。这使得标准工作流程适合协调非幂等操作,例如启动 Amazon EMR 集群或处理付款。标准工作流程执行根据处理的状态转换数量计费。

Express Workflow 非常适合高容量的事件处理工作负载,例如IoT 数据摄取、流数据处理和转换以及移动应用程序后端。它们最多可以运行五分钟。Express Workflows 采用一种at-least-once模型,在该模型中,一次执行可能会多次运行。这使得 Express Workflows 非常适合协调诸如转换输入数据和通过 PUT 操作在 Amazon DynamoDB 中存储等等等等等权能操作。Express Workflow 执行按执行次数、执行持续时间和执行时消耗的内存计费。

标准和快速工作流程可以自动启动,以响应来自亚马逊 API Gateway(大规模完全托管 API)的 HTTP 请求、IoT 规则和亚马逊 140 多个其他事件源等事件 EventBridge。

提示

要向您部署 Express 工作流程示例Amazon Web Services 账户,请参阅 The Workshop 的模块 7-API Gateway、并行状态、Express 工作流程。Amazon Step Functions

有关标准和快速工作流程执行的控制台体验的信息,请参阅在控制台中执行标准和快速工作流程

标准工作流程与快速工作流程
标准工作流 快速工作流程:同步和异步
最长持续时间 一年。 五分钟
支持的执行启动率 每秒秒秒秒秒秒秒秒 每秒秒秒秒秒秒秒秒
支持的状态转换速率 每个账户每秒超过 4,000 几乎无限制。
定价 按状态转换次数定价。每次完成执行中的一个步骤时,都会计算一次状态转换 按您运行的执行次数、持续时间和内存消耗量定价。
执行历史记录 可以使用 Step Functions API 列出和描述执行情况。可通过控制台直观调试执行情况。也可以通过在状态机上启用 CloudWatch 日志记录来在 Logs 中对其进行检查。

无限的执行历史记录,也就是说,在 5 分钟内保留尽可能多的执行历史记录条目。

通过在状态机上启用 CloudWatch 日志记录,可以在日志或 Step Functions 控制台中检查执行情况。

执行语义 只执行一次工作流程。

异步快速工作流程一种t-least-once工作流程的执行。

同步快速工作流程一种t-most-once工作流程的执行。

服务集成 支持所有服务集成和模式。 支持所有服务集成。
注意

Express Workflow 不支持 Job-run (.sync) 或 Callback (.waitForTaskToken) 服务集成模式。

Step Functions 活动 支持 “Step Functions” 活动。 不支持 “Step Functions” 活动。