Nginx限流配置

limit_req_zone $binary_remote_addr zone=ip_limit:10m rate=10r/s;
 
server {
  location /api/ {
    limit_req zone=ip_limit burst=12 delay=4;
    proxy_pass http://login_upstream;
  }
}

Nginx限流配置_第1张图片

 

$binary_remote_addr 针对客户端ip限流;

zone=ip_limit:10m 限流规则名称为ip_limit,允许使用10MB的内存空间来记录ip对应的限流状态;

rate=10r/s 限流速度为每秒10次请求

burst=12 漏桶的大小设置为12

delay=4 从桶内第5个请求开始delay

这样通过控制delay参数的值,可以调整允许并发执行的请求的数量,使得请求变的均匀起来,在有些耗资源的服务上控制这个数量,还是有必要的。

你可能感兴趣的:(nginx,运维,linux)