本文主要解析一下ngx_http_core_module、ngx_http_limit_conn_module以及ngx_http_limit_req_module中的limit相关配置参数。
limit_rate
  
    
      名称 
      默认配置 
      作用域 
      官方说明 
      中文解读 
      模块 
    
  
  
    
      limit_rate
      limit_rate 0;
      http, server, location, if in location
      Limits the rate of response transmission to a client. The rate is specified in bytes per second. The zero value disables rate limiting. The limit is set per a request, and so if a client simultaneously opens two connections, the overall rate will be twice as much as the specified limit.
      指定每秒该连接能下载的bytes,主要用来限制个别请求的带宽
      ngx_http_core_module
    
    
      limit_rate_after
      limit_rate_after 0;
      http, server, location, if in location
      Sets the initial amount after which the further transmission of a response to a client will be rate limited.
      设置多少bytes过后将启动limit计数,如果小于此值则不限速
      ngx_http_core_module
    
    
      limit_except
      没有默认值
      location
      Limits allowed HTTP methods inside a location. The method parameter can be one of the following: GET, HEAD, POST, PUT, DELETE, MKCOL, COPY, MOVE, OPTIONS, PROPFIND, PROPPATCH, LOCK, UNLOCK, or PATCH. Allowing the GET method makes the HEAD method also allowed
      设置除了指定的http methods外其他method将被限制,允许GET就自动允许HEAD方法
      ngx_http_core_module
    
  
实例
 location /downloads {
      limit_rate_after 1m;
      limit_rate 500k;
    }
    location / {
      proxy_pass http://localhost:3000;
      limit_except GET {
        deny all;
      }
    }
limit_conn
  
    
      名称 
      默认配置 
      作用域 
      官方说明 
      中文解读 
      模块 
    
  
  
    
      limit_conn
      没有默认值,语法 limit_conn zone number;
      http, server, location
      Sets the shared memory zone and the maximum allowed number of connections for a given key value. When this limit is exceeded, the server will return the error in reply to a request.
      指定一个zone的每个key最大连接数
      ngx_http_limit_conn_module
    
    
      limit_conn_zone
      没有默认值,语法 limit_conn_zone key zone=name:size;
      http
      Sets parameters for a shared memory zone that will keep states for various keys. In particular, the state includes the current number of connections. The key can contain text, variables, and their combination. Requests with an empty key value are not accounted.
      第一个参数是key,第二个参数是指定zone及其存放元数据(key,current num of conns per key,zone size)的共享内存大小
      ngx_http_limit_conn_module
    
    
      limit_conn_log_level
      limit_conn_log_level error;
      http, server, location
      Sets the desired logging level for cases when the server limits the number of connections. This directive appeared in version 0.8.18.
      指定当触发limit的时候日志打印级别
      ngx_http_limit_conn_module
    
  
实例
http {
  limit_conn_zone $binary_remote_addr zone=ips:10m;
  limit_conn_zone $server_name zone=servers:10m;
  limit_conn_log_level notice;
  server {
    # these limits apply to the whole virtual server
    limit_conn ips 10;
    # only 1000 simultaneous connections to the same server_name
    limit_conn servers 1000;
  }
}
limit_req
  
    
      名称 
      默认配置 
      作用域 
      官方说明 
      中文解读 
      模块 
    
  
  
    
      limit_req
      没有默认值,语法 limit_req zone=name [burst=number] [nodelay];
      http, server, location
      Sets the shared memory zone and the maximum burst size of requests. If the requests rate exceeds the rate configured for a zone, their processing is delayed such that requests are processed at a defined rate. Excessive requests are delayed until their number exceeds the maximum burst size in which case the request is terminated with an error.
      指定zone的burst大小
      ngx_http_limit_req_module
    
    
      limit_req_zone
      没有默认值,语法 limit_req_zone key zone=name:size rate=rate;
      http
      Sets parameters for a shared memory zone that will keep states for various keys. In particular, the state stores the current number of excessive requests. The key can contain text, variables, and their combination. Requests with an empty key value are not accounted.
      第一个参数指定key,第二个参数指定zone名称和元数据的内存大小,第三个参数rate指定单位时间的请求数阈值
      ngx_http_limit_req_module
    
    
      limit_req_log_level
      limit_req_log_level error;
      http, server, location
      Sets the desired logging level for cases when the server refuses to process requests due to rate exceeding, or delays request processing. Logging level for delays is one point less than for refusals.
      指定触发req limit时打印的日志级别
      ngx_http_limit_req_module
    
  
实例
http {
 limit_req_zone $binary_remote_addr zone=myreqzone:10m
 limit_req_log_level warn;
 server {
  ## 每个ip限定10个连接数
  ## 正常一个浏览器给每个host开两到三个连接
  ## 触发的话会返回503
  ## nodelay表示一上来就直接计算,不经过一些预热后再计算
  limit_req zone=myreqzone burst=10 nodelay;
 }
}
以上就是我们整理的nginx中limit配置参数的全部内容,大家可以在下方的留言区讨论,感谢你对的支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]
 
                     
                    