Re: Ограничение на число исходящих соединений

Сергей Пузырёв spuzirev на gmail.com
Ср Окт 14 14:11:15 UTC 2015


Можно сделать ещё намного более извращенную схему с перепроксированием по
петле:

upstream ws {
  server 10.17.17.38.5003;
}

upstream internal-ws {
  server 127.0.0.1:5001;
  server 127.0.0.2:5001;
  server 127.0.0.3:5001;
}

server {
  listen 15.15.72.198:443 ssl;
  proxy_connect_timeout 30s;
  proxy_timeout 3600s;
  proxy_pass internal-ws;
  error_log /var/log/nginx/websocket-ssl.log info;
}

server {
  listen 127.0.0.1:5001
  proxy_pass ws;
  proxy_bind 1.1.1.1;
}

server {
  listen 127.0.0.2:5001;
  proxy_pass ws;
  proxy_bind 2.2.2.2;
}

server {
  listen 127.0.0.3:5001;
  proxy_pass ws;
  proxy_bind 3.3.3.3;
}

14 октября 2015 г., 17:00 пользователь kpoxa <kpoxa на kpoxa.net> написал:

> Добрый день.
>
> Спасибо за попытку помочь, к сожалению proxy_bind в варианте с stream
> сервером можно использовать только один раз, т.к. в данном случае нет
> location как таковых, есть только очень длинные соединения с commet
> сервером, которые могут длиться днями, и это их нормальное поведение.
> Конфиг простой:
> stream {
> upstream ws {
>     server      10.17.17.38:5003;
> }
>
> server {
>     listen                      15.15.72.198:443 ssl;
> #ssl params skipped;
>     proxy_connect_timeout       30s;
>     proxy_timeout               3600s;
>     proxy_pass                  ws;
>     error_log /var/log/nginx/websocket-ssl.log info;
> }
> }
>
> 14 октября 2015 г., 16:43 пользователь Сергей Пузырёв <spuzirev на gmail.com>
> написал:
>
> Можно использовать директиву proxy_bind
>> http://nginx.org/ru/docs/http/ngx_http_proxy_module.html#proxy_bind и
>> наваять грязный хак наподобие:
>>
>> split_clients $connection $downstream {
>>   50% 1;
>>   50% 2;
>> }
>>
>> upstream backend {
>>   server A;
>>   server B;
>> }
>>
>> server {
>>   location /bla {
>>     rewrite /down$downstream$request_uri;
>>   }
>>   location /down1 {
>>     rewrite /down1(.*)$ $1 break;
>>     proxy_pass http://backend;
>>     proxy_bind 1.1.1.1;
>>   }
>>   location /down2 {
>>     rewrite /down2(.*)$ $1 break;
>>     proxy_pass http://backend;
>>     proxy_bind 2.2.2.2;
>>   }
>> }
>>
>> 14 октября 2015 г., 16:36 пользователь kpoxa <kpoxa на kpoxa.net> написал:
>>
>>> Проблемы с настройками ОС нет, я ж написал, уперся в лимит портов, грубо
>>> говоря в 64 000 +-, а надо 200 тыс. Пробовал и с указанными вами
>>> переменными играться, и, например, наличие нескольких IP из одной подсети,
>>> исходящие соединяются не распределяются по IP самостоятельно, для этого
>>> надо делать какие-то телодвижения в коже, коих сейчас, видимо, нет. Поэтому
>>> у меня и вопрос - может быть они есть и я что-то упустил в доках? А если
>>> нет, то не планируются ли? Какой-нибудь downstream { out_ip ip1; out_ip
>>> ip2; } :)
>>>
>>> 2015-10-14 15:59 GMT+03:00 Alex Vorona <voron на amhost.net>:
>>>
>>>> Похоже проблемы с настройками ОС
>>>> http://nginx.org/en/docs/freebsd_tuning.html
>>>> net.inet.ip.portrange.randomized=0
>>>> net.inet.ip.portrange.first=1024
>>>> net.inet.ip.portrange.last=65535
>>>>
>>>> Для Linux  sysctl net.ipv4.ip_local_port_range
>>>>
>>>> _______________________________________________
>>>> nginx-ru mailing list
>>>> nginx-ru на nginx.org
>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>>
>>>
>>> _______________________________________________
>>> nginx-ru mailing list
>>> nginx-ru на nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>>
>> --
>> С уважением,
>> Сергей Пузырёв
>> тел.: +7-916-980-70-45
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru на nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>



-- 
С уважением,
Сергей Пузырёв
тел.: +7-916-980-70-45
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20151014/f3039c1a/attachment.html>


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