首页 文章

AWS SWF(简单工作流程)仅在存在SQS消息时启动,这可能吗?

提问于
浏览
0

我的目标:

我有一个非常简单的工作流程,我想实现 . 给定ID,只有当该文件尚不存在时,才在s3存储桶中创建一个名为ID.txt的文件 .

到目前为止我尝试了什么:

我已阅读doco并使用aws-ruby-flow浏览了一些示例 .
到目前为止,总有意义 .

我仍然没有得到:

我的愿望是让工作流程处理包含s的SQS消息 . 我不了解的是当排队的消息出现时如何启动工作流程 .

问题

我是否需要在SQS中找到消息的任何地方实现我自己的轮询服务?

1 回答

  • 1

    Amazon Simple Workflow Service可以跨分布式组件协调工作 . 但是,每个组件必须"call into" SWF以检查是否有任何工作正在等待执行 .

    最近的更新现在也是allows Amazon SWF to trigger an AWS Lambda function而不是等待组件请求工作 .

    但是,Amazon Simple Queue Service(SQS)消息无法触发Amazon SWF .

    值得回过头来看看你的整个工作流程 . 例如,您可以:而不是将消息推送到SQS中:

    • 发送到Amazon简单通知服务(SNS),它可以触发AWS Lambda函数,或

    • 直接触发AWS Lambda函数,或

    • 只需始终上传到Amazon S3(如果你已经存在,那么覆盖文件的危害是什么?),或者

    • 重新考虑为什么要在Amazon S3中创建这样的文件并可能使用数据库

相关问题