1.限制原因
- 当服务器流量异常,负载过大时
- 对于大流量恶意攻击访问,会带来带宽的浪费,服务器压力,影响业务
- 往往考虑对同一个ip的连接数,并发数进行限制
2.限制方法
cd /usr/local/nginx/conf
#切换到此目录下
vim nginx.conf
#编辑配置文件
- 编辑内容如下:
limit_conn_zone $binary_remote_addr zone=addr:10m;
#内存大小为10M,用来对于ip传输进行开销
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
#限制一秒不能超过一个请求
limit_conn addr 1;
#只能一个并发,多了会报错
limie_rate 50k;
#限制带宽,每秒最多50k
limit_conn_zone:用来限制同一时间连接数,即并发限制
limit_req_zone:用来限制单位时间内的请求数,即速率限制,采用的漏桶算法“leaky bucket”
$binary_remote_addr:限制同一客户端ip地址
zone=one:10m:表示生成一个大小为10M,名字为one的内存区域&#x