nginx对ip的访问频率进行限制(limit_req)和对ip连接数(并发量)进行限制(limit_conn)

1.nginx 限制每个ip的访问频率,需要limit_req_zone和limit_req配合使用
  在http中定义limit_req_zone:
 
limit_req_zone $binary_remote_addr zone=promote_req_limit:50m rate=3r/s;
  解释:$binary_remote_addr是替代 $remore_addr 的变量, 可认为是远程ip, zone=promote_req_limit定义了名称为 promote_req_limit的zong    50m为会话状态储存的空间,rate=3r/s; 表示定义的请求频率为每秒3次请求


  在server中引用limit_req:
 
limit_req   zone=promote_req_limit  burst=2 nodelay;

  解释:burst=5:表示允许超过限制的请求数不多于5个,nodelay:超过的请求不会被延迟处理,直接返回503

2.nginx限制每个ip的并发请求,需要limit_conn_zone和limit_conn配合使用
  在http中定义limit_conn_zone:
 
limit_conn_zone $binary_remote_addr zone=promote_con_limit:50m;#解释:容器共使用50M的内存来对于IP传输开销
  limit_conn_zone $server_name zone=perserver:10m;#容器共使用10兆的内存对servername进行处理
      
  在server中引用limit_conn:

  limit_conn promote_con_limit 3;#解释:同一 IP 同一时间只允许有3个连接
  limit_conn perserver 100;#解释:同一servername 同一时间只允许有100个连接
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值