Welcome! Log In Create A New Profile

Advanced

Как nginx считает текущую скорость при работе limit_req?

January 09, 2010 02:44AM
И все-таки я побуду утренним занудой. Теоретический вопрос.

вот к примеру имеем в конфиге
[code]
limit_req_zone $binary_remote_addr zone=one:10m rate=30r/s;
[/code]

Допустим на сервер приходят 9 запросов с промежутком 50ms

С точки зрения математики и сферического коня в вакууме, фактическая частота запросов при этих условиях составит:
[code]
1/50ms = 20 запросов в секунду.
[/code]
А с точки зрения nginx`a?

Почему я задаю такой вопрос? Меня бы это не волновало, но.
Я в качестве эксперимента выставил лимит на частоту 30r/s, далее иду на тестовую страницу, на которой около 15-ти картинок, стилей и прочих элементов (т.е. в сумме, при одном рефреше этой страницы, браузер сгенерирует не больше 16 запросов).
И что же я получаю в error логе? Я все равно получаю якобы превышение частоты и дилэи (от 1 до 3).

А если усложнить вопрос и представить что несколько запросов шли с разным интервалом но уложились в одну секунду? По какой формуле нгинкс вычисляет скорость для решения об ограничении n+1-го запроса? Текущее среднее?
Subject Author Posted

Как nginx считает текущую скорость при работе limit_req?

Vanya January 09, 2010 02:44AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 220
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready