Nginx速率限制-仅在达到上限时减速

时间:2018-10-17 16:44:59

标签: nginx rate-limiting

我们最近切换到了Nginx,我很高兴看到那里的速率限制似乎很容易。我为特定区域设置了以下限制:

limit_req_zone $binary_remote_addr zone=PHPUtilities:10m rate=60r/m;

我将该区域应用于20突发的位置块。这一切似乎都很好,但是令我惊讶的是,我很快就会变慢,服务器拒绝响应5秒钟左右。好像nginx每分钟要处理60个请求,然后将其分解为每秒1个请求。因此,如果我们同时加载多个脚本,nginx将立即处理第一个请求,然后延迟其他请求。

我希望它的行为类似于“好吧,他们每分钟获得60个免费请求。只有一次,他们达到60个后,我们才会开始限制它们,首先是减慢接下来的20个请求(之后,一切都会消失,直到他们不再请求太多,或者跌破每分钟60个限制。”

有办法吗?

0 个答案:

没有答案