nginx请求限制配置

Posted 崔某人的架构师之路~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx请求限制配置相关的知识,希望对你有一定的参考价值。

连接限制没有请求限制有效?
我们前面说过, 多个请求可以建立在一次的TCP连接之上, 那么我们对请求的精度限制,当然比对一个连接的限制会更加的有效。
因为同一时刻只允许一个连接请求进入。
但是同一时刻多个请求可以通过一个连接进入。
所以请求限制才是比较优的解决方案。

//nginx请求限制语法
Syntax:  limit_req_zone key zone=name:size rate=rate;
Default: —
Context: http

Syntax: limit_conn zone number [burst=number] [nodelay];
Default: —
Context: http, server, location

//具体配置如下:
http {
//http段配置请求限制, rate限制速率,限制一秒钟最多一个IP请求
limit_req_zone $binary_remote_addr zone=req_zone:10m rate=1r/s;
    ...
    server {
    ...  

        location / {
        //1r/s只接收一个请求,其余请求拒绝处理并返回错误码给客户端
            limit_req zone=req_zone;
        //请求超过1r/s,剩下的将被延迟处理,请求数超过burst定义的数量, 多余的请求返回503
            #limit_req zone=req_zone burst=3 nodelay;
        }

  





以上是关于nginx请求限制配置的主要内容,如果未能解决你的问题,请参考以下文章

Nginx 配置对流量连接和请求的限制

Nginx流控

Nginx限流

Nginx限流

Nginx配置origin限制跨域请求(应对等保)

Nginx限流