【问题标题】:API Gateway throttling -- burst limit vs rate limitAPI 网关限制——突发限制与速率限制
【发布时间】:2022-10-23 07:54:57
【问题描述】:

我找不到关于这两个术语的任何文档。我仔细研究了 AWS 文档和 Google 结果。

突发限制和速率限制有什么区别?当我在我的 API 上更改默认路由限制的设置时,只有两个数字输入。它没有说明这些数字代表什么单位或时间范围。是每秒 API 调用次数吗?每分钟?

【问题讨论】:

标签: amazon-web-services aws-api-gateway


【解决方案1】:

突发限制定义了您的 API 可以同时处理的请求数。速率限制定义每秒允许的请求数。这是Token bucket 实现的一个实现。

official documentation 仅简要提及该算法。

【讨论】:

  • 在这种情况下,如果不是“在同一秒内”,“同时”是什么意思?这是否意味着在前一个呼叫完成之前开始的呼叫?
  • 非常。并发意味着请求并行运行。假设一个请求需要 10 毫秒,如果它们都是串行执行的,那么您每秒可以有 100 个请求,并发为 1。但是如果它们都在同一时刻执行,并发性将是 100。在这两种情况下,100 的速率限制就足够了。在第一种情况下,突发限制为 1 将允许所有请求成功,在第二种情况下,这将拒绝 99 个请求。
  • 感谢您的解释!你知道 API Gateway 如何处理这些限制吗?它是立即返回错误代码,还是稍等片刻,看看是否可以在下一秒左右处理请求?文档说“此时客户端可能会收到 429 Too Many Requests 错误响应”,但“可能”使该声明模棱两可。
【解决方案2】:

需要设置三个“数字”: 节流:

  • 速率:每秒最大请求数
  • 突发:每秒最大并行请求数(同时) 配额
  • 启用配额:每月最大请求

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-16
    • 1970-01-01
    • 1970-01-01
    • 2020-11-04
    • 1970-01-01
    • 2014-08-05
    • 1970-01-01
    相关资源
    最近更新 更多