致电其他 AWS 服务 - AWS Step Functions

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

致电其他 AWS 服务

通过 AWS 服务集成,您可以直接从工作流程中调用 API 操作并协调执行。你可以使用 Step Functions 的 AWS SDK 集成直接从状态机调用 200 多个 AWS 服务中的任何一个,这样你就可以访问九千多个 API 操作。或者,您可以使用 Step Functions 的优化集成,每个集成都经过自定义,可为您的工作流提供特殊功能。有些 API 操作在这两种类型的集成中都可用。如果可能,我们建议使用优化的集成。

您可以直接从 Amazon States Language 中的 Task 状态协调这些服务。例如,使用 Step Functions,您可以调用其他服务用于:

  • 调用一个 AWS Lambda 函数。

  • 运行作 AWS Batch 业,然后根据结果执行不同的操作。

  • 从 Amazon DynamoDB 插入或获取一个项目。

  • 运行 Amazon Elastic Container Service (Amazon ECS) 任务并等待任务完成。

  • 在 Amazon Simple Notification Service (Amazon SNS) 中发布主题。

  • 在 Amazon Simple Queue Service (Amazon SQS) 中发送消息。

  • 管理我们的 Amazon 的工作 SageMaker。 AWS Glue

  • 构建用于执行 Amazon EMR 作业的工作流。

  • 启动 AWS Step Functions 工作流程执行。

优化集成

Step Functions 对优化集成进行了自定义,为工作流环境提供特殊功能。例如,Lambda Invoke 将其 API 输出从转义 JSON 转换为 JSON 对象。AWS BatchSubmitJob 允许您暂停执行直到作业完成。第一组优化集成于 2018 年发布,目前已有五十多个 API。

AWS 软件开发工具包集成

AWS SDK 集成的工作方式与使用软件开发工具 AWS 包的标准 API 调用完全相同。它们可以直接从你的状态机定义中调用 200 多个 AWS 服务中的 900 多个 API。

集成模式支持

标准工作流程和快速工作流程支持相同的集成,但不支持相同的集成模式

  • 每种集成的优化集成模式支持都不同。

  • Express Workflows 支持 Run a Job (.sync) 或等待回调 (. waitForTask代币)。

  • 有关更多信息,请参阅 标准和快速工作流

Standard Workflows
支持的服务集成
服务 请求响应 运行作业 (.sync) 等待回调 (.waitForTaskToken)
优化集成 Amazon API Gateway
Amazon Athena
AWS Batch
Amazon Bedrock
AWS CodeBuild
Amazon DynamoDB
Amazon ECS/Fargate
Amazon EKS
Amazon EMR
Amazon EMR on EKS
Amazon EMR Serverless
Amazon EventBridge
AWS Glue
AWS Glue DataBrew
AWS Lambda
AWS Elemental MediaConvert
Amazon SageMaker
Amazon SNS
Amazon SQS
AWS Step Functions
AWS 软件开发工具包集成 两百多种
Express Workflows

跨账户存取

Step Functions 提供对工作流程 AWS 账户 中不同配置的资源的跨账户访问权限。使用 Step Functions 服务集成,您可以调用任何跨账户 AWS 资源,即使该资源 AWS 服务 不支持基于资源的策略或跨账户调用。

有关更多信息,请参阅 在工作流程中访问其他资源 AWS 账户 中的资源