Nginx的限速设置方法

引用场景

  • DDOS防御
  • 下载场景保护IO

IP下载速率做限制

每处理一次请求,对突发超过5个以后的请求放入缓存区

http {
    # zone=缓存名:流速10m rate=美秒一个
    limit_req_zone $binary_remote_addr zone=baism:10m rate=1r/s; 
    server {
    location /search/ {
        # zone缓存区名 触发值5  返回503
        limit_req zone=baism burst=5 nodelay;
    } 
}

下载限速

  • 限制下载速度
  • 限制同时下载人数
# 基于IP做连接限制 限制同 IP并发为1 下载速度为100K limit_conn_zone $binary_remote_addr zone=addr:10m; 
server {
    listen 80; 
    server_name localhost; 
    location / {
        root html;
        index index.html index.htm; 
    }
    location /abc { 
        limit_conn addr 1; 
        limit_rate 100k;
    } 
}

猜你喜欢

转载自blog.csdn.net/weixin_42329277/article/details/84784550