• nginx并发连接控制模块ngx_http_limit_conn_module


    模块: ngx_http_limit_conn_module

    作用: 根据定义的key限制并发连接数

    配置示例:

    http {
        limit_conn_zone $binary_remote_addr zone=addr:10m;
    
        ...
    
        server {
    
            ...
    
            location /api/ {
                limit_conn addr 10;
                limit_conn_status 503;  
            }
        }
    }
    

      

     说明: 示例中定义key(zone=addr)为addr,分配内存大小为10m(zone=addr:10m(如果限制域的存储空间耗尽了,对于后续所有请求,服务器都会返回 503),同一个ip($binary_remote_addr和服务器连接超过10个(limit_conn addr 10将会被拦截并返回503(limit_conn_status 503错误码

    涉及指令:

      limit_conn_zone 

      limit_conn 

      limit_conn_status 

      limit_conn_log_level 

    指令详解:

    limit_conn_zone
    
    语法: limit_conn_zone key zone=name:size;(设置限制规则、区域名称及分配的内存大小)
    可配置区域: http
    
    key: 必选项;设置限制规则;取值可以是text文本、nginx变量或两者的组合;实例中使用的nginx变量$binary_remote_addr表示根据每个ip限制并发
    
    name: 必选项; 自定义一个区域名称; 任意字符串
    
    size: 分配内存的大小
    

     

    limit_conn 
    
    语法: limit_conn zone number; (使用由limit_conn_zone定义的拦截规则, 并设置具体的限制连接数量)
    可配置区域: http, server, location
    
    zone: 必选项; 由limit_conn_zone(zone=name)定义的名称; 表示使用定义的哪个限制规则
    
    number: 必选项; 正整数; 表示具体的限制连接数量
    
    limit_conn_status 
    
    语法: limit_conn_status code;
    默认值: 503
    可配置区域: http, server, location
    
    表示超出limit_req配置的请求数量后返回给客户端的错误码使用该指令最低版本 1.3.15

      

    limit_conn_log_level 
    
    语法: limit_conn_log_level info | notice | warn | error;
    默认值: limit_conn_log_level error;
    可配置区域: http, server, location
    
    当服务器拒绝处理由于速率超过或延迟请求处理而拒绝处理请求时,设置所需的日志记录级别。
    
    最低版本: 0.8.18
    

      

      

      

     

  • 相关阅读:
    触发器
    累加求和存储过程
    check约束条件
    数据库的备份还原
    创建万能分页
    视图
    进销存存储过程
    函数存储过程
    数据库作业27~45
    数据库作业17~26
  • 原文地址:https://www.cnblogs.com/zhen-rh/p/7439981.html
Copyright © 2020-2023  润新知