lte lt gte gt conditions

Андрей Василишин a.vasilishin на kpi.ua
Вт Сен 15 20:52:23 UTC 2015


14.09.2015 18:50, Maxim Dounin пишет:

>> Надо в зависимости от $connections_writing устанавливать $limit_rate, при
>> чем ступенчато. Скажем от 0 до 5к - без ограничений, от 5к до 10к -
>> ограничение  200к, от 10к до 15к  - 150к, от 15к и выше - 100к
>
> Как-то так:
>
>      map $connections_writing $limit {
>          "~^.{1-3}$"          0;
>          "~^[1234].{3}$"      0;
>          "~^.{4}$"            200k;
>          "~^[1-4].{4}$"       150k;
>          default              100k;
>      }
>
> И далее в нужном месте:
>
>      set $limit_rate $limit;
>
> Не то чтобы очень прямо, но должно работает


Спасибо за регексы, Максим, предпоследний правда немного неправильный.
Решил наделать больше ступенек, вышло так:
     map $connections_writing $limit {
         "~^.{1-3}$"          0;         #0-1000 connections
         "~^[1-4].{3}$"       0;         #1000-4999 connections
         "~^[5-7].{3}$"       300k;      #5000-7999 connections
         "~^[8-9].{3}$"       250k;      #8000-9999 connections
         "~^1[0-2].{3}$"      200k;      #10000-12999 connections
         "~^1[3-5].{3}$"      150k;      #13000-15999 connections
         default              100k;      #over 16000 connections
     }




>> ЗЫ $connections_writing и другие переменные ngx_http_stub_status_module не
>> описаны тут http://nginx.org/ru/docs/varindex.html
>
> Да вроде описаны.
>

Действительно, что-то я как-то плохо смотрел.



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