Однажды я поймала себя на мысли:

А почему VSCode так тормозит? 🤔

Сначала я просто перезапускала редактор и мирилась с этим.
Но в какой-то момент я поняла: хватит терпеть — надо разобраться по-настоящему.


Подход к расследованию

Я решила действовать так же, как и при оптимизации производительности любого софта:

  1. Определить цель

  2. Измерить

  3. Проанализировать

  4. Придумать решение

  5. Реализовать и проверить эффект

Шаг 1. Определяю цель

Что именно значит «VSCode тормозит»?
У меня это выглядело так:

  • Редактор полностью зависает (мышь не двигается)

  • Логи коммитов не отображаются

  • Copilot перестаёт подсказывать

👉 Цель: устранить эти проблемы и сделать работу комфортной.

Шаг 2. Измерения

В VSCode есть несколько встроенных инструментов для анализа производительности:

  • Startup Performance — показывает время запуска редактора

  • Developer Tools — проверка ошибок в UI и сетевых запросах

  • Process Explorer — мониторинг CPU и памяти по процессам

Startup Performance

Открывается через Ctrl+Shift+PStartup Performance.
Полезно при медленном старте, но у меня запуск был нормальный → исключаю.

Developer Tools

Меню Help > Toggle Developer Tools.
Позволяет смотреть Console и Network на наличие ошибок.
У меня всё было чисто.

Process Explorer

Меню Help > Open Process Explorer.
Показывает загрузку CPU/памяти каждым процессом.

👀 Именно здесь я увидела, что процесс расширений загружает 99% CPU!

(У меня не осталось скриншота с загрузкой CPU на 99%, так как изначально я не планировала писать статью. Поэтому приведённое ниже изображение — только для примера.)
(У меня не осталось скриншота с загрузкой CPU на 99%, так как изначально я не планировала писать статью. Поэтому приведённое ниже изображение — только для примера.)

Шаг 3. Анализ

Было ясно, что виновато какое-то расширение.
Я увидела в Process Explorer, что процесс расширений грузит процессор почти на 100%.
Но сам Process Explorer не показывает, какое именно расширение вызывает проблему.
Нужно было пойти дальше и найти способ локализовать виновника.

Для этого я использовала Extension Bisect.

Extension Bisect

Штатный инструмент VSCode для поиска «плохого» расширения:

  1. Меню Help > Start Extension Bisect

  2. VSCode отключает половину расширений

  3. Я проверяю — проблема есть или нет

  4. Повторяю шаги, пока не останется одно расширение

👉 В моём случае виновником оказалось расширение Rails.

Шаг 4. Решение

Расширение Rails предоставляет сниппеты, переходы и автодополнение.
Но в моей конфигурации оно было не нужно и конфликтовало с другими подсказками.

👉 Я просто удалила его.

Шаг 5. Проверка эффекта

После удаления:

  • Загрузка CPU упала с 99% до 10%

  • Редактор заметно ускорился

  • Работать стало комфортно ✨


Выводы

  • Не стоит действовать наугад — лучше пройти путь цель → измерения → анализ → решение → проверка

  • Встроенные инструменты VSCode очень помогают:

    • Process Explorer

    • Extension Bisect

  • Расширения стоит выбирать осознанно, а не «потому что кто-то посоветовал».


Заключение

Если у вас VSCode вдруг начал «тормозить» или зависать —
не спешите удалять всё подряд или винить железо.

👉 Попробуйте сначала встроенные средства диагностики.
Вполне возможно, что как и у меня, виновато одно-единственное расширение.

Надеюсь, мой опыт окажется полезным 🙌