Nginx PREACCESS阶段 如何限制每个客户端每秒处理请求数

 

L:56

这里要注意的是 limit_req模块在limit_conn之前执行

limit_req_zone $binary_remote_addr zone=one:10m rate=2r/m;#以用户IP作为key 开辟共享内存10M 并且限制每分钟2个请求 rate=表示每秒请求数r/s 每分钟r/m 
server
{
  listen 8090;#监听端口
  root html/;
  location / {
    limit_conn_status 500;#定义向用户返回的错误码 500
    limit_conn_log_level warn; #错误等级
    #limit_rate 50;#向用户返回限制每秒50字节
    #limit_conn addr 1;#限制用户并发数1
    limit_req zone=one burst=3 nodelay; #burst表示 假如用户请求连接超过了设置 那么将放入请求池中 burst表示 可以放入3个请求 如果第四个进来则返回503 
    #limit_req zone=one;
  }
}
原文地址:https://www.cnblogs.com/jackey2015/p/10373886.html