Задать вопрос

Почему node.js runtime есть столько памяти?

Запускаю nuxt.js сборку через `pnpm dev` команду. При этом начинает потребляться огромное количество оперативки, вплоть до 20гб. Кто сталкивался с таким? как решить можно?

Проблема наблюдается и в моей сборке, где я работаю и в новосозданном hello world проекте на 1 App.vue компонент.
версия node: 22.12.0
  • Вопрос задан
  • 1375 просмотров
Подписаться 4 Простой 1 комментарий
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 2
@kruzhkaKofe
Была такая же история, сменить ноду на версию постарее помогло
Ответ написан
Комментировать
@KandiDev
Непонятно в какой системе запускается процесс, на разных ОС по разному надо анализировать потребление памяти. Но факт в том, что NodeJS любит память так же как любит её Chrome. Если приложение падает при максимальном потреблением памяти машины, значит есть утечки памяти и их надо искать и удалять. Если приложение продолжает работать и никаких проблем нет (оно не падает) и нет линейного графика потребления памяти на сервере (в виде пилы, где снижение памяти - это падение приложения), значит всё хорошо, оно работает стабильно и проблем нет, просто чем больше памяти потребляет NodeJS, тем ей проще выполнять работу.

Попробуйте использовать NodeJS версии LTS для вашей OS.
Вроде бы в NodeJS есть какой-то процент, по которому она запрашивает память у системы - это можно погуглить. Ограничить размер кучи (head) можно с помощью флагов:
node --max-old-space-size=2048 app.js
и
node --max-semi-space-size=2048 app.js
по этим флагам читайте документацию и изучайте вопрос глубже
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы