Приветствую. Есть nginx сервер, он принимает запросы на 80 и 8080 порты. На 80 он отдаёт статику (js бандлы приложения). На 8080 проксирует запросы к серверу nodejs + socket.io (это api приложения). Пытаясь разобраться с nginx, видел много комментов, что вебсокеты лучше не проксировать, т.к. это только лишняя нагрузка на nginx, что лучше использовать cluster и нода сама хорошо справится с нагрузкой. Вроде всё логично, но возникает вопрос, как балансировать нагрузку если nodejs серверов становится больше одного? И действительно ли, постоянно открытый коннект вебсокета будет нагружать nginx? Помогите разобраться, как лучше это реализовать.
П.с: я понимаю, что нода сама по себе может держать много конектов и, возможно, второй сервер излишен. Сайт делается в учебных целях, поэтому такой вопрос.
GiperScriper: про pm2 в курсе, но еще не пробовал использовать, попробую разобраться. Я так понимаю, что это более продвинутая реализация cluster. Смогу ли я с её помощью связать несколько node серверов под одним мастер-процессом?
Я согласен с RidgeA. И с GiperScriper.
Есть у меня сервис, nginx отдает статику, проксирует веб-сокеты и запросы на python. При нагрузочном тестировании, вся нагрузка у нас была на python. Nginx вообще ничего не заметил.