Visual Studio 2017-Узел.Процесс сервера JS-отключить?
Я работаю над a ASP.NET приложение в Visual Studio 2017, и я замечаю узел.JS: серверный Javascript-процесс, работающий на 1,3 - 1,8 ГБ памяти. Мой рабочий процесс IIS-это нормальный размер, который он имеет в VS 2015.
мое приложение не включает в себя какой-либо узел.JS библиотеки. Я не могу понять, как повернуть этот узел.JS: процесс Javascript на стороне сервера выключен. Это съедает слишком много памяти для того, что мне не нужно.
есть ли способ убить это помимо удаление VS 2017 и переключение обратно на VS 2015?

убийство основного процесса в Диспетчере задач ничего не влияет на VS, однако если я перейду на вкладку "Сведения" и убью отдельные запущенные процессы, он выйдет из строя Visual Studio. Я снял видео того, что произошло после того, как я убил процесс и запустил свою локальную веб-страницу (извините за качество, поэтому размер изображения ограничен 2 МБ):

7 ответов:
Инструменты > Параметры > Текстовый Редактор > JavaScript / TypeScript > Языковая Служба...
снимите флажок "Включить новую службу языка JavaScript".
Это, по-видимому, предотвращает запуск процесса NodeJS.
Я поднял обратную связь по этому вопросу:
Я получил ответ от команды MS - он направил меня на этот пост:
узел.исполняемый процесс имеет командную строку:
эффективно мне сказали:
в VS 2017 несколько функций реализованы в JavaScript. Узел.js используется Visual Studio для запуска этого JavaScript. Помимо прочего, Node используется для запуска кода, который обеспечивает форматирование и службы intellisense, когда пользователь редактирует TypeScript или JavaScript. Это изменение по сравнению с 2015 годом.
Он отвечает на мой вопрос, но выводит на свет другой-зачем вам это нужно 1.4 ГБ памяти, чтобы дать мне intellisense на JavaScript файлы ... или это одно из решений, встроенных в VS, поэтому он использует меньше памяти, поэтому он не попадает в предел 2 ГБ(4 ГБ) 32-разрядных процессов? Вопросы вопросы вопросы.
вы должны отключить поддержку TypeScript в Visual Studio:
Инструменты > Расширения и обновления > TypeScript для Microsoft Visual Studio > отключить
после этого просто перезапустите Visual Studio, и вы хорошо идти.
https://developercommunity.visualstudio.com/content/problem/27033/nodejs-server-side-javascript-process-consuming-to.html?childToView=27629#comment-27629) привел меня к ответу Боудена Келли, прямо под принятым ответом.
вот ответ Боудена Келли:
процесс узла, который вы видите, включает службу языка JavaScript. Вы увидите, что этот процесс появляется в любое время, когда вы редактируете файл JS, файл TS или любой файл с JS/TS внутри (html, cshtml и т. д.). Этот процесс является то, что полномочия IntelliSense, навигация по коду, форматирование и другие функции редактирования, и он делает это путем анализа всего контекста вашего проекта. Если у вас их много .JS файлы в вашем проекте, это может получить большой, но, скорее всего, проблема в том, что у вас есть много файлов библиотеки, которые анализируются. По умолчанию мы будем сканировать каждый .js/.файл ТС в ваш проект. Но вы можете переопределить это поведение и настроить языковую службу так, чтобы она фокусировалась только на вашем коде. Для этого создайте tsconfig.JSON в корне проекта со следующими параметрами:
{ "compilerOptions": { "allowJs": true, "noEmit": true }, "exclude": [ "wwwroot/lib" //ignore everything in the lib folder (bootstrap, jquery, etc) // add any other folders with library code here ], "typeAcquisition": { "enable": true, "include": [ "bootstrap", "jquery" //list libraries you are using here ] } }Как только я добавил папку со всеми моими библиотеками сценариев в tsconfig.файл JSON, жизнь снова была хороша.
самый грязный обходной путь: просто переименуйте
ServiceHub.Host.Node.x86.exeк чему-то еще. Не беспокоили меня. Когда (Если) вам это действительно нужно, просто переименуйте его обратно.тот же трюк работает в Adobe Photoshop, который также запускает узел по какой-то причине, которую я еще не обнаружил в своем обычном рабочем процессе.
получается...
вы не можете просто переименовать его и ожидать вещи, чтобы работать. Кто бы мог подумать!
по-видимому, этот трюк переименования работает только если вы приостановите процесс VS и убейте узел, затем возобновите VS.если вы попытаетесь запустить VS с переименованным файлом exe узла, он рухнет при открытии проекта с "неизвестной жесткой ошибкой". Кроме того, при работе над уже загруженным проектом счетчик ленивых ссылок выше методов и свойств не будет работать, потому что, по-видимому, это зависит от того, что узел каким-то образом там находится.
поэтому было бы неплохо просто приостановить процесс узла и позволить Windows подкачки поменять свою память из ОЗУ на жесткий диск, без переименование exe, чтобы вы могли снова запустить VS позже, не проходя через переименование хлопот. Если вы готовы жить с последствиями, то есть.
что-то, что может помочь проектам смягчить вес nodejs: это переназначить версию узла, используемую под Инструменты > Параметры > проекты и решения > управление веб-пакетами к установленной 64-битной версии. Studio все равно запустит свой внутренний узел для сервера TSS.JS экземпляр, но любой typescript в проекте будет по умолчанию для поставляемой версии-и это помогло мне из первых рук.
кроме того, в другой раз я обнаружил, что языковая служба работает, я обнаружен с помощью простого
tsconfig.jsonнад каталогами, используемыми в качестве репозиториев, и укажитеskipLibCheck: true, и добавить node_modules, чтобы исключить -- чрезвычайно помогли вдоль службы, и один файл делает все папки под ним, независимо от прямых ссылок на проект. С. П.-Если вы хотите поддержку IntelliSense для JavaScript по-прежнему, убедитесь, что установленallowJs: trueи .наконец, проверьте в параметрах Typescript под Инструменты > Параметры > Текстовый Редактор > Javascript / Typescript > Project что он не проверен на автоматически компилировать файлы Typescript, которые не являются частью проекта так как это также может связать ресурсы для вспомогательных сторонних проектов с помощью узла или typescript.
это не дурак доказательство, каждый должен найти свое точное узкое место, но я нашел эти работы для меня и моей команды чаще, чем не
просто отмечая, что потребление высокой памяти было исправлено в выпуске 10 мая 2017 года-Visual Studio 2017 версии 15.2 (26430.04).
примечания к выпуску здесь:https://www.visualstudio.com/en-us/news/releasenotes/vs2017-relnotes
конкретные замечания об исправлении здесь: https://developercommunity.visualstudio.com/content/problem/27033/nodejs-server-side-javascript-process-consuming-to.html

Comments