limit_req

Maxim Dounin mdounin на mdounin.ru
Сб Авг 20 09:55:15 UTC 2011


Hello!

On Sat, Aug 20, 2011 at 04:56:33AM -0400, xganet wrote:

> Подскажите правильно ли размещена
> строка:
> limit_req   zone=one  burst=10;
> или же её надо в секцию:
> 		location / {
> .........
> .........
> 		}

Это зависит от того, что вы хотите закрыть лимитом.  Обычно 
защищать статику - занятие малоосмысленное, а порой и вредное, 
т.к. в результате не могут загрузиться картинки/css'ы/javascript'ы 
на страницах.  Т.е. в типичном случае лучше ставить limit_req внутри 
location'ов, обрабатываемых бекендом.

Если хотите оставить limit_req для всего сервера - то я бы как 
минимум рекомендовал использовать параметр "nodelay", i.e.

    limit_req zone=one burts=10 nodelay;

Если же решите перенести в конкретные location'ы, то можно будет 
существенно уменьшить rate в limit_req_zone.  При используемом
у вас

> 	limit_req_zone  $binary_remote_addr  zone=one:10m   rate=20r/s;

особой защиты бекенда ждать не приходится.

Maxim Dounin



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