Alw*_*nny 5 amazon-s3 amazon-web-services aws-lambda
我在我的存储桶上设置了一个 S3 事件,该事件触发 lambda 来调整图像大小。因此,每次将文件放入存储桶 S3 时,都会调用 lambda 函数,包含所创建文件信息的事件将被发送到 lambda 函数。
以下是如何触发的示例:
下一个:
下面是 lambda nodejs 执行此操作的示例代码:
exports.handler = (event, context, callback) => {
var lastCreatedFile = event.Records[0].s3.object.key;
console.log(lastCreatedFile);
};
Run Code Online (Sandbox Code Playgroud)
但我的要求是在一个 S3 事件(上传对象)上触发 2 个 lambda - 一个图像调整大小,另一个将图像元数据存储回 RDS。
但目前S3事件不支持多个lambda触发器。我看到了一个使用 SNS 然后发送到多个 lambda 的实现,但我不想使用该实现,因为在这种情况下我需要更改当前的架构。
因此,请让我知道或展示一些其他实现或建议。
最近发布的Amazon S3 事件通知与 Amazon EventBridge允许您使用触发多个 lambda 关闭存储桶事件,并具有重播和存档等功能。
或者,您可以坚持使用 S3 通知并链接 lambda 调用S3 -> lambda1 -> lambda2:恶心。或者使用阶跃函数S3 -> lambda -> Sfn -> lambda1 + lambda2。双讨厌。[编辑]:三重恶心 -S3 -> Lambda1 -> S3 -> Lambda2
| 归档时间: |
|
| 查看次数: |
5339 次 |
| 最近记录: |