我正在将文件上传到S3,并在S3上有一个触发器,该触发器运行Lambda函数来更新文件。当我在更新后将文件写回到S3时,是否会触发Lambda再次运行,从而导致文件上的无限循环更新?
该文件正由另一个Lambda函数放置在该文件中。如果它导致无限循环,我将使用SNS,但是对于我的用例而言,这将更加复杂。
答案 0 :(得分:2)
您所描述的确实会导致无限循环。
我可以看到两个避免这种情况的选择。
最简单的方法是将修改后的文件拖放到单独的存储桶(如果将S3触发器设置为其他文件夹,则将其放入单独的文件夹)。
另一个选择是调用从将文件放入S3的lambda更新文件的lambda。您可以在这里使用中间人,例如首先,lambda向SNS / SQS发送一些东西,后者又触发更新文件的lambda。