【问题标题】:aws dynamodb free tier practical limitaws dynamodb 免费层实际限制
【发布时间】:2017-02-18 03:57:32
【问题描述】:

根据AWS Dynamodb pricing 它允许 25 个读取容量单位,这意味着每秒 50 个 GetItem 请求(最终保持一致,每个项目小于 4kb)。

免费套餐*

作为 AWS 免费套餐的一部分,AWS 客户可以开始使用 Amazon DynamoDB 免费。 DynamoDB 客户可获得 25 GB 的免费存储空间,如 以及多达 25 个写入容量单位和 25 个读取容量单位 持续吞吐能力(足以处理多达 200 每月 10 万次请求)和 250 万次读取请求 DynamoDB Streams 免费。

这如何转化为在线网站?如果超过 50 个用户同时进行 GET 调用,请求会受到限制吗?最终返回 400 响应?这是否意味着免费层的实际限制是,如果 100 个用户登录站点并同时进行 GET 调用,我们可能会看到来自 DynamoDB 的 400 个响应。这是有效的结论吗?

我了解每每秒秒可能会有 100 个热门请求。但是,如果网站在任何时候都有超过 200 名的活跃用户,那么 Dydnmodb 免费套餐是否仍然有效?

【问题讨论】:

  • AWS 免费使用套餐的目的是为客户提供一种尝试各种 AWS 服务以更好地了解其功能的方法。我不认为我们的目的是让人们在免费层上运行生产工作负载。您应该根据您的应用程序和客户的需求来确定您的容量,而不是试图保持在免费限制内。
  • @JohnRotenstein 启动应用程序需要此数据。对于一个有大约 50 个活跃用户(总是)登录的简单网站,想知道 DynamoDB 是否会比 App Engine 数据存储成本更高。我知道每个 http 请求都可能导致超过 1 个 DynamoDB 表 Get 调用,尽管有缓存层。我试图在免费层的限制上寻求 DynamoDB 的实践经验。

标签: amazon-web-services amazon-dynamodb


【解决方案1】:

首先,阅读 DynamoDB burst capacity。您的 DynamoDB 表应该能够在没有限制的情况下维持较高吞吐量的短暂爆发。

其次,数据库吞吐能力如何“转化为在线网站”的问题过于广泛,无法直接回答。这完全取决于您的 Web 应用程序对每个 Web 请求进行多少数据库调用。您的问题听起来像是假设您网站上的每个页面加载都会导致一个 DynamoDB 请求。这似乎是一个极其不切实际的假设。

您应该使用 CDN 来防止尽可能多的请求甚至访问您的 Web 服务器。您应该使用像 Redis 这样的缓存来防止尽可能多的数据查找访问您的数据库。然后,您应该执行一些基准测试以确定您将需要的数据库吞吐量,并根据 DynamoDB 免费套餐对其进行评估。

您的网络应用内容多久更改一次?用户是否提交对您的内容的更改?如果是,多久提交一次?这些问题将直接影响您网站的缓存效果,这将直接影响您的应用必须多久返回数据库以获取最新内容。

至于在 DynamoDB 请求受到限制的情况下向用户返回什么响应,这完全取决于您如何在 Web 应用程序中捕获和处理错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-16
    • 2020-11-21
    • 1970-01-01
    • 2017-12-09
    • 1970-01-01
    相关资源
    最近更新 更多