我们决定尝试并限制每分钟的请求,而不是在我们的站点上每秒请求请求。然而,在这种情况下,我对突发参数感到困惑。
我的印象是,当你使用“无延迟”标志时,限速工具的作用就像一个令牌桶而不是漏桶。在这种情况下,桶大小等于burst参数,每次违反策略(比如1 req/s),就必须在桶中放置一个令牌。当桶满后(等于突发设置),您将得到一个503错误页。
我的印象也是,一旦违反者停止违反政策,一个令牌将从桶中移出,速度为1令牌/S,允许他重新访问该网站。
假设我有上述正确的答案,我的问题是,当我开始调节每分钟的访问时会发生什么?如果我们选择每分钟60个请求,令牌桶以什么速度补充?
发布于 2010-07-18 13:36:24
从我的实验来看,每分钟似乎只是写速率的一种方式,它是在亚秒间隔。因此,60r/m == 1r/s可以通过将其设置为每分钟60次请求,然后以每秒2次请求的方式进行演示。它将从一开始就受到限制,而不仅仅是在提出60项请求之后。
话虽如此,我仍不完全明白这一切是如何运作的:
发布于 2015-10-17 13:54:02
是的,它确实像令牌桶算法一样工作。我还用我的服务器进行了手动实验,以验证这一点。例如,您可以看到https://stackoverflow.com/questions/14869390/nginxngx-http-limit-req-module-for-how-long-is-503-returned-once-exceeding-the
如果您选择60 req/min,它将每秒钟补充一个令牌。
https://serverfault.com/questions/146351
复制相似问题