nginx如何配置控制并发连接数?

提问者:帅平 问题分类:运维
nginx如何配置控制并发连接数?
1 个回答
一生的爱意
一生的爱意
可以通过ngx_http_limit_conn_module模块限制一个IP的并发连接数,配置如下:
http {
    limit_conn_zone $binary_remote_addr zone=ops:10m;
    server {
        listen       80;
        server_name  ops-coffee.cn;
        root /home/project/webapp;
        index index.html;
        location / {
            limit_conn ops 10;
        }
        access_log  /tmp/nginx_access.log  main;
    }
}

limit_conn_zone: 设定保存各个键(例如$binary_remote_addr)状态的共享内存空间的参数,zone=空间名字:大小
大小的计算与变量有关,例如$binary_remote_addr变量的大小对于记录IPV4地址是固定的4 bytes,而记录IPV6地址时固定的16 bytes,存储状态在32位平台中占用32或者64 bytes,在64位平台中占用64 bytes。1m的共享内存空间可以保存大约3.2万个32位的状态,1.6万个64位的状态
limit_conn: 指定一块已经设定的共享内存空间(例如name为ops的空间),以及每个给定键值的最大连接数
上边的例子表示同一IP同一时间只允许10个连接
发布于:2年前 (2023-01-11) IP属地:四川省
我来回答