Re: limit_req странное поведение

Anatoly Mikhailov anatoly at sonru.com
Thu Jun 6 22:44:03 UTC 2013


On Jun 6, 2013, at 9:00 PM, Валентин Бартенев <vbart at nginx.com> wrote:

> On Thursday 06 June 2013 23:31:23 Anatoly Mikhailov wrote:
>> Столкнулся с очень неожиданной проблемой, limit_req ведет себя
>> непредсказуемо. Установка любого количества запросов в limit_req_zone
>> сводится к ограничению, которое устанавливается через limit_req.
>> 
>> Такой конфиг пропустит только 1 запрос в секунду (проверено через Apache
>> Bench):
>> 
>>  limit_req_zone            $binary_remote_addr zone=one:10m rate=70r/s;
>>  limit_req                      zone=one;
>> 
>> Такой конфиг позволит пройти только 6 запросам в секунду:
>> 
>>  limit_req_zone            $binary_remote_addr zone=one:10m rate=70r/s;
>>  limit_req                      zone=one burst=5;
>> 
>> Вопрос, каким образом влияет параметр rate на ограничение запросов?
>> 
> 
> С каких это пор ab умеет лимитировать скорость поступления запросов? =)
> 

разумеется, ab не умеет лимитировать запросы, он использовался по прямому назначению,
логи приложения и nginx error.log дали ясное представление о том, сколько прошло,
сколько было отлуплено

> 70 запросов в секунду - это 1000мс/70 ~ 14мс, вы видимо запустили ab -n N
> и N запросов были благополучно посланы менее чем за 14мс, естественно при
> этом N-1 получили отлуп (во втором случае ещё 5 запросов заполнили ведерко
> и были задержаны, остальные уже получили отлуп).
> 

да, запускал так ab -n 10 -c 10. Механизм понял

> Читайте: http://en.wikipedia.org/wiki/Leaky_bucket
> 
> --
> Валентин Бартенев
> http://nginx.org/en/donation.html
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



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