Comments 11
Использовать node.js для серверной части. По моему, это не правильный путь. Оно же жрет ресурсы как не в себя!
Я в основном на java пишу серверный приложения, но мне приходится и фронт часто доделывать (React JS).
Когда запускаешь node.js как прокси сервер для отладки, то у меня рабочий комп сразу включает вентилятор и 90% всех ресурсов ужирает на node.js.
Довод: «должны ли мы писать бэк и фронт на одном и том же языке», на мой взгляд, очень сомнительный не только по тем причинам, что автор привел в статье, а еще по тому, что знания для фронта и бэка - это разные знания. Язык дело вторичное.
Хотя меня у JS вызывает отвращение. С TS чуть лучше, но все равно нахлобучка поверх JS.
Сколько лет вашему компьютеру?
Важно другое.
Как вы используете имеющийся компьютер? На моём нагрузка редко опускается ниже 75%.
Обычный nettop core i3 3Гц c 16Гб озу и SSD.
Сборку android и java приложений вполне быстро делает.
Ну конечно. С любителями JS трудно спорить.
Меня еще поразило на Joker 2022 доклад, в котором упомянули что node.js в облаке у них стартуют до 45 секунд.
Ну ну. Когда сервисы (http) стартуют дольше 2-3 сек меня уже спрашивает эксплуатация "какого фига".
Когда запускаешь node.js как прокси сервер для отладки
Вы включаете скорее всего и сервер, и сборку, и file watcher, который отслеживает изменения и начинает собирать фронт. Когда приходилось работать с фронтом, действительно было так. Но к беку это вообще никак не относится, потому что Hot Reload для фронта не такая простая штука, как вам кажется.
А так на Node.js микросервисы стартуют довольно быстро и RPS очень хороший, в некоторых кейсах даже больше, чем у Java. Память уже давно не жрёт, как раньше. Раньше и я слышал такие же слухи про Java, что медленная и памяти жрёт, но что было раньше, то было раньше? Правда ведь?
Проблема с NPM ровно та же как и со всеми сторонними библиотеками. А если не использовать сторонние библиотеки, то очень быстро утонешь в рутине так как многое придется писать самому. Можно писать свои библиотеки, потеряв время, но ещё встает вопрос тестирования.
Как вариант: пишем прототип быстро на библиотеках, а потом переписываем на своё. Но как правило такое временное решение и становится постоянным.
Что насчёт, например, boost? Или такие библиотеки не считаются?
Так проблема с безопасностью и в boost может быть. Злонамеренный код и в неё может быть включен.
Гладко было на бумаге, или почему не стоит чрезмерно доверять туториалам