ngx_http_limit_conn_module 模块
该模块一般应用在以下场景:
①、秒杀、抢购并发限制
②、下载带宽限制
③、防止攻击
详细说明:
ngx_http_limit_conn_module 模块对于一些服务器流量异常、负载过大,甚至是大流量的恶意攻击访问等,进行并发数的限制。该模块可以根据定义的键来限制每个键值的连接数。并不是所有的连接都被计算在内,只有当服务器处理了一个请求,并且整个请求头已经被读取时,才会计算连接。
该模块提供了两个配置参数,limit_conn_zone 和 limit_conn ,其中 limit_conn_zone 只能配置在 http段,而 limit_conn 则可以配置于http、server、location 段中。
一、limit_conn_zone
语法:limit_conn_zone $variable zone=name:size;
配置段:http
参数说明:$variable:定义的键,要限流的维度;
zone=name: 定义区域名称(名称随意起名),主要作用与后面的 limit_conn中对应就好。
size: 定义各个键共享内存空间大小。
该指令描述会话状态存储区域。键的状态中保存了当前连接数,键的值可以是特定变量的任何非空值(空值不会被考虑)。比如有以下配置示例:#限制连接数
limit_conn_zone $binary_remote_addr zone=test:20m;
注释:
①、客户端的i