Re: limit req zone - некорректый подсчет числа запростов ?

Валентин Бартенев vbart at nginx.com
Wed Sep 11 20:07:52 UTC 2013


On Wednesday 11 September 2013 23:59:39 SergeyFs wrote:
> Добрый день всем...
> 
> Пытался сделать ограничение кол-ва запросов для одного локейшена, и
> сталкнулся с непонятным для меня эффектом.
> 
> AWS, nginx стоит за лоад балансером.
> 
> nginx.conf :
> 
>     set_real_ip_from 10.0.0.0/16;
>     real_ip_header X-Forwarded-For;
>     real_ip_recursive on;
> 
>     limit_req_zone  $binary_remote_addr zone=basic:16m rate=300r/s;
> 
> ......
>     location ~* \.(html)$ {
>         limit_req   zone=basic  nodelay;
> .....
> 
> Лимит специально сделан сильно выше, чем в принципе нужно (реквест рэйт
> вообще не превышает 10r/s по данным амазона)  Но несмотря на это я в логах
> вижу (поправил dns и ip):
> 
> 2013/09/09 23:19:54 [error] 4818#0: *328855 limiting requests, excess:
> 0.700 by zone "basic", client: 6.1.2.194, server: dev.testserver.io,
> request: "GET /scripts/ops/views/organizations/organizations.html
> HTTP/1.1", host: "dev.testserver.io", referrer:
> "https://dev.testserver.io/ops.html" 2013/09/09 23:21:46 [error] 4818#0:
> *329120 limiting requests, excess: 1.000 by zone "basic", client:
> 6.1.2.194, server: dev.testserver.io, request: "GET
> /scripts/ops/views/organizations/organizations.html HTTP/1.1", host:
> "dev.tesserver.io", referrer: "https://dev.testserver.io/ops.html"
> 2013/09/09 23:21:46 [error] 4818#0: *329120 limiting requests, excess:
> 0.700 by zone "basic", client: 6.1.2.194, server: dev.testserver.io,
> request: "GET /scripts/ops/views/organizations/organizations.list.html
> HTTP/1.1", host: dev.testserver.io", referrer:
> "https://dev.testserver.io/ops.html"
> 
> 
> подскажите, пожалуйста, в чем может быть причина...

В том, что "реквест рэйт" все-таки превысил 300r/s.  Это не так сложно, как
может показаться.  Достаточно послать два запроса с интервалом менее 3-х 
миллисекунд.

--
Валентин Бартенев
http://nginx.org/en/donation.html


Подробная информация о списке рассылки nginx-ru