簡體   English   中英

在單個 S3 object 上傳事件上觸發多個 lambda

[英]Trigger multiple lambda on single S3 object upload event

我在我的存儲桶上設置了一個 S3 事件,該事件觸發 lambda 來調整圖像大小。 So every time a file is placed in bucket S3, the lambda function is called, an event with information from the created file will be sent to the lambda function.

以下是如何觸發的示例:

在此處輸入圖像描述

下一個:

在此處輸入圖像描述

這是執行此操作的示例代碼 lambda nodejs:

exports.handler = (event, context, callback) => {

  var lastCreatedFile = event.Records[0].s3.object.key;
  console.log(lastCreatedFile);

};

但我的要求是在一個 S3 事件(上傳對象)上觸發 2 個 lambda - 一個圖像調整大小,另一個將圖像元數據存儲回 RDS。

但目前 S3 事件不支持多個 lambda 觸發器。 我看到了一個使用 SNS 然后發送到多個 lambdas 的實現,但我不想使用那個因為在這種情況下我需要更改我當前的架構。

所以讓我知道或展示一些其他的實現或建議。

最近發布的帶有 Amazon EventBridge 的 Amazon S3 事件通知可讓您使用觸發多個 lambda 關閉存儲桶事件,並具有重播和存檔等優點。

或者,您可以堅持使用 S3 通知並鏈接 lambda 調用: S3 -> lambda1 -> lambda2 呸。 或使用步驟 Function S3 -> lambda -> Sfn -> lambda1 + lambda2 雙呸。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM