本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将服务与 Step Functions 集成
了解如何使用 Step Functions 集成 AWS 服务 和调用 HTTPS APIs 。通过服务集成,您的工作流程可以协调资源并协调业务流程。
根据工作流程类型和可用性,您的工作流程使用以下三种服务集成模式之一来调用服务:
-
请求响应(默认):等待 HTTP 响应,然后进入下一个状态
-
Run a Job (
.sync
)-等待任务完成 -
等待 Callback (
.waitForTaskToken
)-暂停工作流程,直到返回任务令牌
要了解更多信息,请参阅服务集成模式。要了解有关控制流向集成服务的数据流的更多信息,请参阅在 Step Functions 中将参数传递给服务 API。
AWS 软件开发工具包集成
AWS SDK 集成的工作方式与使用 SD AWS K 进行 API 调用完全一样。
使用AWS 软件开发工具包集成,您的状态机可以为两百多个 AWS 服务调用九千多个 API 操作。
例 你可以使用的集成:
-
调用一个 AWS Lambda 函数。
-
运行 AWS Batch 作业并根据结果采取不同的操作。
-
在亚马逊 DynamoDB 中检索或更新商品。
-
运行 Amazon Elastic Container Service (Amazon ECS) 任务并等待任务完成。
-
在 Amazon Simple Notification Service (Amazon SNS) 中发布主题。
-
在 Amazon Simple Queue Service (Amazon SQS) 中发送消息。
-
管理我们的 Amazon AWS Glue A SageMaker I 的任务。
-
构建用于执行 Amazon EMR 作业的工作流。
-
启动另一个 AWS Step Functions 工作流程执行。
优化集成
除了标准集成外,Step Functions 还提供优化的集成,从而提供增强的功能。Step Functions 定制了优化的集成,以便在将服务集成到工作流程环境中时提供更好的开发者体验。
例如,经过优化的 Lambda Invoke 会自动将 API 输出从转义的 JSON 转换为您可以更轻松地使用的 JSON 对象。另一个例子是AWS BatchSubmitJob如何在批处理作业完成之前暂停执行,这是一种常见的情况。
如果可能,我们建议使用经过优化的集成。
有关优化集成的完整列表,请参阅专门章节 将优化的服务与 Step Functions 集成
致电 HTTP APIs
HTTP 任务是一种Task 工作流程状态状态,可用于在工作流程 APIs 中调用 HTTPS。API 可以是公开的,例如 Stripe 或 Salesforce 等第三方 SaaS 应用程序。您也可以调用私有 API,例如在 Amazon Virtual Private Cloud 中调用基于 HTTPS 的应用程序。
有关更多信息,请参阅 在 Step Functions 工作流程 APIs 中调用 HT。