加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

Nginx#ngx_http_limit_req_module:超过费率后503返回多长时间?

发布时间:2020-12-13 21:31:31 所属栏目:Nginx 来源:网络整理
导读:说我设定 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;server { location / { limit_req zone=one burst=5 nodelay; } 然后持续5秒钟,我每秒发送10个请求. 哪个请求应该看到200,哪个应该看到503? 它会是每10个请求中的第一个吗? 或者nginx

说我设定

limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

server {
    location / {
        limit_req zone=one burst=5 nodelay;
    }

然后持续5秒钟,我每秒发送10个请求.

哪个请求应该看到200,哪个应该看到503?
它会是每10个请求中的第一个吗?

或者nginx是否跟踪不良用户不断发送请求,在这种情况下,只有50个请求中的第一个会得到200?

最佳答案
正如文档中所述:http://nginx.org/en/docs/http/ngx_http_limit_req_module.html nginx使用“漏桶”算法,这种算法在网络区域中很简单且很常见.您可以在维基百科上阅读:http://en.wikipedia.org/wiki/Leaky_bucket

至于你的问题(rate = 1r / s burst = 5 nodelay),实际上它会是这样的:

 Req.# | Time (sec) | Response
   1         0         200 OK
   2       0.1         200 OK
   3       0.2         200 OK
   4       0.3         200 OK
   5       0.4         200 OK
   6       0.5         200 OK
   7       0.6         503
   8       0.7         503
   9       0.8         503
  10       0.9         503
  11       1.0         200 OK
  12       1.1         503
  13       1.2         503
  14       1.3         503
  15       1.4         503
  16       1.5         503
  17       1.6         503
  18       1.7         503
  19       1.8         503
  20       1.9         503
  21       2.0         200 OK
  22       2.1         503
  23       2.2         503
  24       2.3         503
  25       2.4         503
  26       2.5         503
  27       2.6         503
  28       2.7         503
  29       2.8         503
  30       2.9         503
  31       3.0         200 OK
  32       3.1         503
  33       3.2         503
  34       3.3         503
  35       3.4         503
  36       3.5         503
  37       3.6         503
  38       3.7         503
  39       3.8         503
  40       3.9         503
  41       4.0         200 OK
  42       4.1         503
  43       4.2         503
  44       4.3         503
  45       4.4         503
  46       4.5         503
  47       4.6         503
  48       4.7         503
  49       4.8         503
  50       4.9         503

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读