本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用快速工作流程进行成本优化
Step Functions 根据您用于构建状态机的工作流类型确定标准和快速工作流的定价。要优化无服务器工作流程的成本,您可以遵循以下其中一项或两项建议:
有关选择 Standard 或 Express 工作流程类型如何影响计费的信息,请参阅Amazon Step Functions定价
提示 #1: 在标准工作流程中嵌套 Express 工作流程
Step Functions 运行持续时间和步骤数有限的工作流程。某些工作流可能会在短时间内完成执行。其他人可能需要将长期运行和长期运行相结合 high-event-rate 工作流。使用 Step Functions,您可以从多个更小、更简单的工作流程中构建大型复杂的工作流程。
例如,要构建订单处理工作流程,您可以将所有非幂等操作包含在标准工作流程中。这可能包括行动,例如通过人际互动批准订单和处理付款。然后,您可以在 Express 工作流程中组合一系列幂等操作,例如发送付款通知和更新产品库存。您可以将此 Express 工作流程嵌套在标准工作流程中。在本示例中,标准工作流程被称为父状态机. 嵌套的 Express 工作流程称为子状态机.
提示 #2: 将标准工作流程转换为快速工作流程
如果现有标准工作流程满足以下要求,则可以将其转换为 Express 工作流程:
-
工作流程必须在五分钟内完成执行。
-
工作流程符合at-least-once执行模型。这意味着工作流程中的每个步骤可能运行不止一次。
-
该工作流未使用
.waitForTaskToken
要么.sync
服务集成模式。
快速工作流程使用亚马逊 CloudWatch 记录执行历史的日志。使用时将产生额外费用 CloudWatch 日志。
使用控制台将标准工作流程转换为 Express 工作流程
-
在状态机页面,选择一个标准类型的状态机将其打开。
提示 来自的任意类型下拉列表中,选择标准筛选状态机列表并仅查看标准工作流程。
-
选择操作,然后选择复制到新的.
-
在选择创作方法页面,选择Express为了类型并保留所有默认选择。
-
选择 Next(下一步)。
-
(可选)根据需要更新工作流程设计,然后选择下一页.
-
在查看生成的代码页面,选择下一页.
-
在指定状态机设置页面,指定新 Express 状态机的详细信息,例如名称、权限和日志级别。
注意 如果您要转换之前在中定义的标准工作流程Amazon CDK要么Amazon SAM,您必须更改的值
Type
和Resource
NAME。 -
选择 Create state machine (创建状态机)。
有关管理工作流程成本优化时的最佳做法和指导方针的更多信息,请参阅建筑性价比高Amazon Step Functions工作流