限制 nginx 中每分钟的请求数

限制 nginx 中每分钟的请求数

我想根据单个客户端 IP 地址设置向我的服务器发出的请求数限制。Nginx 有一个limit_req_zone指令。但是,这个指令实际上会限制平均的命中。如果我将限制设置为rate=6r/m,则实际上每 10 秒只允许命中一次。

相反,我需要的是每分钟的实际限制。例如,客户端应该能够快速地连续甚至同时发出 3 或 4 个请求,但每分钟不超过 10 个请求。有办法吗?

答案1

nodelay啊,我认为这可以通过在底部描述的设置来完成limit_req 维基

如果不需要延迟突发内的超额请求,则应使用选项 nodelay:

limit_req   zone=one  burst=5  nodelay;

相关内容