gpt4 book ai didi

python-3.x - 如何将相同的 Amazon S3 事件定向到多个不同的 SQS 队列中?

转载 作者:行者123 更新时间:2023-12-02 16:53:42 26 4
gpt4 key购买 nike

我正在使用 AWS Lambda 函数(在 Python 中)处理出现在同一 Amazon S3 存储桶和文件夹中的新文件。

当新文件出现在 s3:/folder1/folderA, B, C 中时,会生成一个事件 s3:ObjectCreated:* 并进入 sqs1 ,然后由Lambda1处理(处理成功后从sqs1中删除)。

我需要与 s3:/folder1/folderA(但不是 folderB 或 C)中出现的同一个新文件相关的相同事件也进入 sqs2 , 由 Lambda2 处理。例如,Lambda1 修改该文件并将其保存在某处,Lambda2 将该文件放入 DB。

但是 AWS 文档说:

Notification configurations that use Filter cannot define filtering rules with overlapping prefixes, overlapping suffixes, or prefix and suffix overlapping.

那么问题是如何绕过这个限制呢?是否有任何已知的推荐或标准解决方案?

最佳答案

看来您的要求是:

  • 当文件添加到 folderA 时,您希望将消息发送到 sqs1 AND sqs2 (可以并行完成)
  • 当一个文件添加到folderB时,您希望发送一条消息到sqs2

这可以通过为每个文件夹配置单独的事件来完成:

  • 事件 A:Prefix = folderA
  • 事件 B:Prefix = folderB
  • 事件 C:Prefix = folderC

然后您可以使用 Amazon SNS 主题扇出到多个队列:

eventA -> sns1 +-> sqs1 -> Lambda1
|
+-> sqs2 -> Lambda2

eventB -> sqs1 -> Lambda1

eventC -> sqs1 -> Lambda1

关于python-3.x - 如何将相同的 Amazon S3 事件定向到多个不同的 SQS 队列中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57399129/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com