amazon-web-services - 限制 S3 上传/SNS 通知的数量
问题描述
我们有一个外部服务,可以将文件上传到我们的S3 bucket
in account A
。我们SNS notifications
在每次上传时提出。一个lambda
函数account B
订阅这些通知。
这对我们很有效,除了如果外部服务错过了配置,它会一起上传 >500 个文件(在一个目录中)。当这种情况发生时,我们的 lambda 会被触发 500 次。
1. Is there a way to limit the number of files uploaded to a bucket within X minutes?
2. Is there a way to stop the lambda from getting invoked if it sees >500 SNS notifications together?
我知道在 Lambda 和 SNS 之间放置一个 SQS 可能会解决我们的问题。我想知道是否有另一种更简单、更方便的方法来解决这个问题。
我探索了限制 lambda 并发的可能性,这样在限制时会失败,但是 SNS 通知将被重试三次(这也是一件好事,我们不希望在出现其他错误的情况下失去这个功能),所以我们这样做不想那样做。
请注意,即时处理对我们来说不是硬性要求。我们可以等待大约 5 分钟来处理 SNS 通知。
解决方案
不可以,无法在给定时间段内限制上传到 Amazon S3。
如果看到超过给定数量的 Amazon SNS 通知,也无法停止调用 Lambda。
推荐阅读
- javascript - 在 React 中传递道具时显示数据的问题
- grid - 是否可以将雷达检测转换为 xyz 网格?
- charts - 在线 Excel 上显示的散点图不正确
- linux - 无法再构建 Docker 映像
- node.js - npm 审计中等严重性漏洞
- python - 如何修复 discord.py 中 cogs 中的 no 'setup' 错误?
- javascript - 试图将上下文传递给我的 WordPress 块
- ios - 在 xCode 11 中接收 SQLite 错误代码 26?
- javascript - 条件是什么?Window.event : e 是什么意思?
- sympy - Sympy 无法解出我的方程式并卡住了