Quantcast
Channel: Nginx Forum - Nginx Mailing List - Russian
Viewing all articles
Browse latest Browse all 3102

Re: Работает ли переменная $upstream addr директиве limit req zone? (no replies)

$
0
0
Hello!

On Tue, Oct 18, 2016 at 08:23:01AM -0400, nerjin wrote:

> Хотелось ограничивать скорость запросов на каждый upstream. Пытался сделать
> вот так:
>
> limit_req_zone $upstream_addr zone=low_speed:10m rate=1r/s;
>
> Но скорость так не ограничивалась.
>
> Вопрос: работает ли тут переменная $upstream_addr и если нет, то как можно
> такое ограничение реализовать?

Так работать не будет, т.к. $upstream_addr - это переменная, в
которой содержатся адреса выбранных для работы бекендов, и
какое-либо осмысленное значение в ней появляется только того, когда
бекенд выбран и запрос отправляется на него.

Если по какой-то причине хочется ограничивать именно частоту
запросов на конкретные бекенды - запросы надо разделить между
бекендами заранее, чтобы в момент работы limit_req было известно,
какой именно бекенд будет использован. Это можно сделать,
например, с помощью модуля split_clients, ну или совсем общий
вариант - с помощью дополнительного проксирования.

--
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Viewing all articles
Browse latest Browse all 3102

Trending Articles