我相信对 Amazon Simple DB 的最大 PUT 请求是 300?
当我向它抛出 500 或 1,000 个请求时会发生什么?它是在亚马逊端排队,我得到 504 还是应该在 EC2 上构建自己的排队服务器?
最佳答案
最大请求量不是一个固定的数字,而是多种因素的组合。每个域都有一个限制策略,但在限制开始之前似乎有一些突发请求的空间。此外,每个 SimpleDB 节点处理多个域,每个域由多个节点处理。处理您的请求的节点上的负载也会影响您的最大请求量。因此,您可以在非高峰时段获得更高的吞吐量(通常)。
如果您发送的请求多于 SimpleDB 愿意或能够提供的服务,您将返回 503 HTTP 代码。 503 服务不可用响应照常进行,应重试。 SimpleDB 中没有进行请求排队。
如果您想获得绝对最大可用吞吐量,您必须能够(或拥有可以)微管理您的请求传输速率的 SimpleDB 客户端。当 503 响应率达到大约 10% 时,您必须减少请求量,然后再建立它。此外,跨多个域传播请求是扩展的主要手段。
我不建议在 EC2 上构建您自己的排队服务器。我会尝试让 SimpleDB 直接处理请求量。额外的一层可以使事情变得平滑,但它不会让您处理更高的负载。
关于amazon-simpledb - Amazon SDB - 解释了每秒 PUTS 限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4290653/