Skip to content

QPS 限制

http://nginx.org/en/docs/http/ngx_http_limit_req_module.html

nginx
worker_processes  1;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    # $binary_remote_addr 和 $remote_addr 区别在于它是二进制的,占用空间更小。
    # zone=one:10m 表示名称以及申请记录信息的内存空间大小
    # rate=15r/s 表示该 IP 每秒最多同时 1 次访问。
    limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;

    server {
        listen       80;
        server_name  localhost;

        location / {
            # 开启
            limit_req zone=one;
            root html;
            index index.html;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}