AWS同步/异步流

时间:2019-03-19 16:32:31

标签: amazon-web-services aws-step-functions

在我的AWS环境中,我需要执行三个步骤:

  • 第1步是同步的
  • 第2步在第1步之后执行,并且是异步的,它从第1步获取输入并对音频文件进行编码并将编码后的文件放在S3上。
  • 第3步应在第2步接受第1步的输入以及第2步中生成的S3上的编码文件后执行。

我应该如何实现呢?我想使用Step函数,但是我不确定如何处理异步Step 2。

1 个答案:

答案 0 :(得分:0)

您可以通过实施任务Activities来实现。

  

活动工作者可以是在Amazon EC2上运行的应用程序   实例,AWS Lambda函数,移动设备:任何应用程序   可以建立HTTP连接,托管在任何地方。步进功能时   达到活动任务状态,工作流等待活动   工作人员轮询任务。活动工作人员通过以下方式轮询步骤功能   使用GetActivityTask,并发送相关活动的ARN。   GetActivityTask返回一个包含输入的响应(JSON字符串   任务的输入)和taskToken(任务的唯一标识符)   任务)。活动工作者完成工作后,可以提供   通过使用SendTaskSuccess来报告其成功或失败   SendTaskFailure。这两个调用使用由提供的taskToken   将结果与该任务相关联的GetActivityTask。

第3步应该是一项活动任务。在步骤2中调用的工作程序将轮询在步骤3中创建的活动,并在完成其工作后将根据工作程序的输出使用SendTaskSuccessSendTaskFailure报告步骤3的活动。