Высоконагруженность и многопоточность в node js?

Здравствуйте, пишу fullstack проект для портфолио, что-то типо соц сети, думаю писать полность на JS поскольку изучаю сейчас JS. С фронтом проблем пока что не возникло. Интересует вопрос из заголовка.
  • Как организовать высоконаргуженный сервер на ноде?
  • Или лучше всего воспользоваться ruby или go для таких целей?
  • Почему спрашиваю, посколько ни ruby не go на данный момент не знаю, и сейчас встал вопрос продолжать писать полностью на JS используя node или для бекенда взять что-то другое?
  • Вопрос задан
  • 1826 просмотров
Решения вопроса 4
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Как организовать высоконаргуженный сервер на ноде?


Нагрузите его)

А если серьезно то нагрузка это не про языки программирования, а про масштабирование и архитектуру. Вам пока рано.

А если таки хотите поломать голову то начните с того факта что серверов должно быть больше одного. Остальное осознание начнет появляться позже
Ответ написан
@Gic0
Попробуй посмотреть пример девшахты, для понимания, как и зачем тебе хватит. https://youtu.be/YHPWG23cS4c
Ответ написан
Комментировать
FrontEndTarot
@FrontEndTarot
Front-end developer
Проблема ноды - однопоточность. Компенсируется асинхронностью, то есть путем разбития на микродействия код в одном потоке на ноде часто выполняется быстрее параллельного на других языках. Азы учить здесь: https://learn.javascript.ru/event-loop
Ответ написан
@crazywu
Возможно я ошибаюсь, но вроде в node js нет настоящей многопоточности из коробки, а только возможность создавать дополнительные процессы. Кажется велась разработка какого-то дополнительного пакета на этот счет, но я не знаю на какой она стадии.

Ну и в целом, если говорить о каких то очень больших нагрузках, то действительно лучше пересесть с ноды на что-нибудь более подходящее. Большинство проектов, написанных на ноде (в силу многих других причин, делающих это решение выгодным) при успешном развитии и росте нагрузки (которую становится дорого закрывать масштабированием железа) переписываются на более мощных языках.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@geektimer
Идите в dev ops.
Или используйте сервисы Amazon/Google и т.д.
Ответ написан
Комментировать
@Kirill-Gorelov
С ума с IT
Пока у тебя еще полностью не сформировалось понятие о том что такое большие нагрузки и как этим всем управлять.
Выдели пару дней прочитай отличную книгу
Ли_Атчисон_Масштабирование_приложений
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы