Re: Ограничение на число исходящих соединений
kpoxa
kpoxa на kpoxa.net
Ср Окт 14 14:14:55 UTC 2015
коннекты на 127.0.0.1 тоже конечны, разве что применять unix socket в этом
месте.
Вот если бы можно было сделать
upstream ws {
server 10.17.17.38:5003 bind 10.17.17. <http://10.17.17.38:5003/>100;
server 10.17.17.38:5003 bind 10.17.17. <http://10.17.17.38:5003/>101;
server 10.17.17.38:5003 bind 10.17.17. <http://10.17.17.38:5003/>102;
}
но тут нужно внедрять это в код nginx.
14 октября 2015 г., 17:11 пользователь Сергей Пузырёв <spuzirev at gmail.com>
написал:
> Можно сделать ещё намного более извращенную схему с перепроксированием по
> петле:
>
> 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 at 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 at 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 at 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 at 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 at nginx.org
>>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> nginx-ru mailing list
>>>> nginx-ru at nginx.org
>>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>>
>>>
>>>
>>>
>>> --
>>> С уважением,
>>> Сергей Пузырёв
>>> тел.: +7-916-980-70-45
>>>
>>> _______________________________________________
>>> nginx-ru mailing list
>>> nginx-ru at nginx.org
>>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>>
>>
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru at nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
>
> --
> С уважением,
> Сергей Пузырёв
> тел.: +7-916-980-70-45
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20151014/6ad44eca/attachment.html>
Подробная информация о списке рассылки nginx-ru