AWS Step Functions
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

转换

在启动状态机执行时,系统以在顶级 StartAt 字段中引用的状态开始。此字段 (字符串) 必须完全匹配某个状态的名称,并且区分大小写。

执行状态之后,AWS Step Functions 使用 Next 字段的值来确定要前进到的下一个状态。

Next 字段还以字符串的形式指定状态名称,并且必须完全匹配(区分大小写)在状态机说明中指定的状态名称。

例如,以下状态包括到 NextState 的转换。

"SomeState" : { ..., "Next" : "NextState" }

大部分状态只允许通过 Next 字段使用一个转换规则。不过,某些流控制状态 (例如,Choice 状态) 允许您指定多个转换规则,每个具有各自的 Next 字段。Amazon 状态语言提供有关您可指定的各个状态类型的详细信息,包括如何指定转换的信息。

状态可以有多个来自其他状态的传入转换。

该过程重复,直至到达最终状态 ("Type": Succeed"Type": Fail"End": true 状态) 或者出现运行时错误。

以下规则适用于状态机中的状态:

  • 状态在封闭块中可以按任意顺序出现,但它们列出的顺序不会影响到它们的运行顺序。运行顺序由状态的内容决定。

  • 在状态机中,只能有一个状态指定为 start 状态,它由顶级结构中 StartAt 字段的值指定。

  • 根据您的状态机逻辑,您可能会有多个 end 状态(例如状态机有多个执行分支时)。

  • 如果状态机只包含一个状态,该状态可以为 start 状态和 end 状态。