Таймураз
Но если + ~1мс к задержке критична, можно покурить маны насчет редиски на каждой машине. Но я бы так делал только раз n-дцать подумав, от чего оно может завалиться
Vl
Всем, привет. Есть вопрос. кто-то использовал nest.js? Кто что может сказать о нем?
Server
Igor
считаете ли вы что ДИ нужен? https://docs.nestjs.com/advanced/dependency-injection
Server
Vl
еще вопросик, кто-то сталкивался с масштабированием TCP сервера на nodejs?
Vl
типо на разных серверах и в разных регионах расположить сервера.
Alessandro
это через nginx наверное
Vl
но они были бы все за одним доменом.
Vl
я думал geo dns
Vl
как-то в ту сторону посмотреть
Vl
может есть у кого-то опыт в этом?
Alessandro
ну наверное есть какие-то SAAS
Alessandro
найди чатик админов)
Vl
Ну помимо этого же надо код сделать готовым к маштабированию горизонтальному)
Vl
через cluster только или через pm2 тоже кто-то имел успех работы?
V
Кластер работает в пределах одной физической машины
Таймураз
сomorsiс
он имел ввиду cluster нодовский
Таймураз
V
Ну и стейтлесс
V
С ним проще
Vladimir
Vladimir
Тем временем, галп смотрит в сторону Napa.js
Mannaro
Привет :)
Подскажите, есть простой способ направить 2 stream в один и закрыть его тогда, когда первые 2 закончат работу?
Mannaro
.pipe(stream, { end: false })
не особо вариант, так как в таком случае надо как-то понять, какой был последний =)
Таймураз
Таймураз
да, сначала пайпишь первый, на его выходе начинаешь пайпить второй
сomorsiс
или берешь mississippi
Oleg
а чем на сервере поднимать скрипт nodejs после рестарта сервера?
Vladimir
pm2
Sergey
Igor
Igor
можно ли апи заимпрувить
Pavel
Ребят подскажите,пытаюсь запилить примитивный чат по примеру с хабра,когда поднимаю сервак,пытаюсь по localhost простучаться,сервак не отвечает,client.js выглядит так
Pavel
Подозреваю что дело в socket = io.connect('http://localhost:8080');
Pavel
server.js выглядит так
сomorsiс
gist.github.com
Pavel
https://gist.github.com/Stripped/f00125ae21079b0191bd0cfc8ce5506f
Joseph
Как можно сделать популейт для этого
сomorsiс
Roman
Vl
Ну у меня сейчас так работает
Vl
и все гуд) Просто у меня это все добро за nginx
Pavel
Ничего не пишет,просто пытаюсь перейти по localhost:8080 и не отдаёт страницу
Pavel
а какие ошибки пишет?
Vl
а я хочу на DNS это все делать
Roman
Pavel
а сервак стартует без ошибок
сomorsiс
надо отдавать статику
Vl
Но беда, что они за одинм nginx стоят все.
сomorsiс
запусти express приложение на другом порту
Vl
+ я юзаю web sockets, а при балансировке через DNS они обрываются. Так как там нету липких сессий, которые дает nginx с помощью ip_hash на ustream
Vl
т.е при балансировке DNS сокеты начинают обраывтся и вести себя крайне не стабильно. Также будет если убрать ip_hash и настроек nginx
Roman
Vl
Ну вот. Я и хочу переделать так, чтобы это было не за одним nginx
Roman
Vl
а с помощью GEO DNS отправлялось на разные nginx за которыми будут стоять сервера nodejs
Roman
Vl
в моем случае это будет быстрее.
Vl
у нас messenger - очень важна скорость работы.
Vl
Ну это не всегда так.
Vl
Если в редких случаях так будет - то это не сильно влияет на ситуацию.
Vl
К примеру юзер из австралии не должен же бежать на сервер в лондоне
Alex
ни кто случаем не знает, как на яндекс картах при построении маршрута через multiroute, подписать точки можно? Не могу найти метод документации подходящий
Vl
таким образом у юзера все будет быстро, а через пару сек, картинка станет доступна везде.
Roman
Vl
Вопрос в том, что websocket когда балансируется через nginx на несколько серверов - работает отлично, с добавлением опции ip_hash в nginx. Таким образом nginx знает к какому из серверов был подключен сокет и в случае кратковременных сбоев сети или других причин не переносить соединение на другой сервер. Так как пока nginx у нас бабансирует round robin. и соединение не разрывается и не прыгает между серверами. А когда это делаешь с помощью DNS - то конкретный сокет подключается к одному из сервернов nginx за которым еще стоят nodejs сервера. Но вот DNS не имеет опции ip_hash и выходит, что коннектит юзера то к одному серверу, то к другому.
Vl
Вот суть проблемы
Vl
@pragus ответил)
Roman
Vl
Да.
Vl
Я это знаю.