【发布时间】:2017-01-06 15:05:10
【问题描述】:
我有以下情况:
- 项目已添加到 DynamoDB 表(触发 Lambda 函数)
- Lambda 函数检查谁订阅了此特定项目
- Lambda 函数将“用户通知”保存到另一个 DynamoDB 表中
例子:
- 用户订阅 (1)white (2)small (3)cat(三个属性)
- 项目被添加到 DynamoDB 表中,它恰好是 白色小猫
- 保存通知以便在用户登录时显示给用户
DynamoDB 很棒,但我发现了一个潜在问题:如果同一项目有数千个订阅者,Lambda 函数必须将数千个“通知”写入表。 DynamoDB 不适用于峰值。
没有这个,我的正常写入吞吐量只有 10-20, 1000 次写入吞吐量的成本超过 500 美元。这些写入峰值会立即阻塞 DynamoDB,或者让我浪费数千美元。
---
如何解决这个问题?我想不出任何合适的 AWS 服务或合理的 DynamoDB hack。
【问题讨论】:
-
DynamoDB 将允许您在短时间内爆发。当容量未充分利用时,它会累积,您可以在每秒 1000 次写入的最大突发速率下使用最多 5 分钟的容量。
标签: amazon-web-services amazon-dynamodb