[英]AWS Lambda cross-region output processing
我在3个AWS区域部署了lambda函数。 我想调用这些函数,这些函数将在S3中的区域桶中写入输出文件。
然后我想收集这些文件(来自3个区域桶)以对它们进行进一步处理。
使用AWS服务的最佳方法是什么?
我在下面进行了探讨:
[1]使用SNS触发跨区域lambda作业。 但不确定如何从区域桶中获取所有3个输出文件以进行进一步处理。
[2]使用AWS Simple Workflow,但您必须再次在3个区域中创建它,并且不支持跨区域活动。
您将要在S3存储桶上设置一个事件,以便在项目写入时启动Lambda。 从:
http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html
对于您的用例,较低规模和较简单的选项是将putObject触发到S3存储桶,它向SNS发布事件,该事件将通过CloudWatch事件直接启动Lambda。
对于更大的规模,您需要将事件发布到SQS队列,现在可以在此处直接看到 。
另外值得注意的是:从你的问题我不认为你知道lambda可以读/写S3的任何区域。 他们不需要在那个地区。 但是他们会更快地读/写该地区的资产,并且不会产生带宽费用
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.