ready-4 IT

VS Code Kollisioun mat Bitdefender (vum Piepsen zur Léisung)

Dës Websäit & mäi Tooling – haut: VS Code Kollisioun mat Bitdefender

Haut war een vun deene Deeg, wou ee fir d'éischt denkt „Hardware kaputt?!" an um Enn ass et eng Ketten aus:

  • 4 oppenen Workspaces
  • Projetën op enger luesemer HDD (Random I/O)
  • VS Code / Git File Watching
  • Bitdefender (bdservicehost.exe), deen bei all Zougrëff „matliist"

D'Resultat: Windows gouf extrem luesen an huet souguer gepiepst.

Ech schreiwen dat hei bewosst als Erfahrungsbericht — inklusive Copy/Paste‑Snippets — well grad esou Artikelen mir am Alldag hëllefen.

TL;DR (Quick Wins)

Wann s du keng Zäit fir déi ganz Geschicht hues, start hei:

1) VS Code: Git Autorefresh aus (bei grousse Repos / luesemen Laufwierker e Gamechanger)

// User Settings (settings.json)
{
  "git.autorefresh": false
}

2) VS Code: Watcher entschäerfen (reduzéiert I/O + triggert Antivirus manner)

{
  "files.watcherExclude": {
    "**/node_modules/**": true,
    "**/vendor/**": true,
    "**/.git/objects/**": true,
    "**/__pycache__/**": true,
    "**/.venv/**": true,
    "**/.pytest_cache/**": true
  }
}

3) Bitdefender: Projetën scho ausgeschloss? Gutt. Dann zousätzlech d'VS‑Code‑Systempäd (Extensions/Cache) an d'Ausnahmen.

4) Wann méiglech: aktiv Repos op SSD/NVMe leeën. HDD + vill kleng Dateien ass déi perfekt Performance-Fall.


Wéi et ugefaangen huet: d'Piepsen

Symptom: Windows piepst (bei mir sou eppes wéi „2× kuerz ... laang Paus ... dann 2× kuerz méi séier"), awer:

  • net beim Boot,
  • mee während Windows leeft,
  • a gläichzäiteg gëtt alles zéi.

Dat ass beunrouegend, well ee fir d'éischt un BIOS-Beepcodes denkt. Bei mir war et awer kee Boot-Problem — et war e „System ass iwwerlaascht an Input fillt sech u wéi blockéiert".


Diagnos: Task Manager & Ressourcenmonitor

1) Task Manager

CPU war net den Täter (bei mir ~17%). Opfälleg war:

  • Disk däitlech héich!
  • VS Code (Code.exe) mat spüerbarer Disk‑Last

resources_problems

2) De entscheedende Bléck: Active Time & Queue

Am Ressourcenmonitor (Reiter „Dateträer") gesäit een zwou Saachen, déi dacks méi soen wéi „MB/s":

blocker_01

  • Active Time 100% op der HDD
  • Queue Length héich (Stau u Ufroën)

Dat fillt sech dann esou un:

  • Tippen laggt,
  • Klicks ginn „verschléckt",
  • de System reagéiert zäitversat,
  • an et ka souguer zu Piepstéin kommen.

Déi eigentlech Root Cause

Bei mir war et eng Kollisioun aus:

1) Vill kleng Dateien

  • Node: node_modules/ (zéngdausende Files)
  • PHP: vendor/
  • Python: .venv/, __pycache__/
  • Git: .git/ (Objects, Index, Status-Reads)

2) VS Code Watcher + Git Autorefresh

  • VS Code freet Git regelméisseg of.
  • Git touchéiert dobäi extrem vill Dateien.

3) Bitdefender scannt parallel

  • bdservicehost.exe liist mat.
  • Och wann den Datenduerchsaz „nëmmen" 10–20 MB/s ass, kann eng HDD duerch Random I/O komplett um Limit sinn.

4) Méi Workspaces gläichzäiteg

  • 4 Fënster/Workspaces multiplizéieren d'Watcher‑Last.

Moossnaumen (Copy/Paste) + Begrënnung

A) VS Code / Cursor Astellungen

Kolonnen
"git.autorefresh": false
User Settings
Verhënnert permanent Git‑Scannen am Hannergrond; reduzéiert I/O massiv.
files.watcherExclude fir node_modules, vendor, etc.
User Settings
Dausende Datei-Events manner → manner Disk‑Last → Antivirus gëtt méi selten getriggert.
Grouss Workspaces op SSD
Filesystem
HDD + Random I/O ass déi schlechtst Kombi fir Dev‑Repos.

Optional (wann s du ESLint/Prettier intensiv notzt):

{
  "eslint.run": "onSave",
  "prettier.requireConfig": true,
  "editor.formatOnSave": true
}

Firwat dat hëlleft:

  • ESLint onType kann bei grousse Monorepos gefillt „dauerlafe".
  • prettier.requireConfig verhënnert, datt Prettier iwwerall automatesch usprengt, wou et net soll.

B) Bitdefender Ausnahmen (Ordner)

Bitdefender akzeptéiert typesch keng Wildcards wéi **/node_modules/**. Dat ass awer och net néideg, wann s du däi Projet-Roots propper bënnels.

bitdefender_01

Recommandéiert Ordner-Ausnahmen:

Kolonnen
Projetën (Root)
F:\\r4it an F:\\Vagrant
Deckt automatesch Ënnerordneren of (inkl. <code>node_modules</code>, <code>vendor</code>, <code>.venv</code>).
VS Code Extensions
%USERPROFILE%\\.vscode\\extensions
Verhënnert Scans beim Lueden/Updaten vun Extensions.
VS Code User Data / Cache
%APPDATA%\\Code
Reduzéiert Schreif-/Lieslatenzen duerch Logs, Cache, State.
Git Installatioun (optional)
C:\\Program Files\\Git
Manner Reibung bei Git‑Tooling.

C) Bitdefender Ausnahmen (Prozesser) – wann ATD bei Ordneren net aktivéierbar ass

Vill Bitdefender-UIs loossen Advanced Threat Defense (ATD) bei Ordneren net aktivéieren. Dann hëlleft nëmmen: Prozess-Ausnahmen.

Recommandéiert Prozesser:

Kolonnen
VS Code
%LOCALAPPDATA%\\Programs\\Microsoft VS Code\\Code.exe
VS Code mécht ganz vill Datei-Operatiounen; ATD kann dobäi bremsen.
Git
C:\\Program Files\\Git\\bin\\git.exe (oder cmd\\git.exe)
Git touchéiert extrem vill Dateien; verhënnert „Scanner dertëschent".
Node
C:\\Program Files\\nodejs\\node.exe
Node‑Tools + Watcher + npm schaffen mat ganz ville klenge Dateien.
PHP
php.exe (jee no Setup)
Composer/Vendor‑I/O, Scans, Builds.
Python
python.exe (jee no Setup)
venv/cache/test caches.

Security‑Hiwäis: Ausnahmen nëmme fir vertrauenswërdeg Ordner/Tools setzen. Ech notzen dat als Performance‑Tradeoff fir Dev‑Ordner, net fir Downloads/Random‑ZIPs.


Firwat node_modules / vendor hei sou wichteg sinn

Dës Ordneren sinn net „grouss", well si vill MB hunn — mee well si vill Unzuel un Dateien hunn.

HDDen si bei „ville klenge Reads" brutal luesen. Watcher + Git + Antivirus mécht doraus eng Dauer‑Waardschlang.


Fazit

Dee gréissten „Aha"-Moment fir mech war, wéi vill Git Autorefresh am Zesummespill mat enger HDD ausléise kann.

Wann s du nëmmen eng Saach direkt teste wëlls: git.autorefresh aus — a kucken, wat mat Queue Length passéiert.

Wann den Editor plötzlech träg wierkt (Typing-Lag, héich CPU, Lüfter), ass et dacks net „d'Extension", mee d'Zesummespill aus File-Watcheren an Antivirus-Scanning.

Esou gesäit d'Belounung aus!

resources_final

D'Resultat: Däitlech méi séier schaffen. D'Queue Length ass vu deelweis iwwer 90.000 op ënner 15.000 gefall — och mat méi oppenen Workspaces.

Dat hei ass eng pragmatesch Checkliste — huel nëmmen déi Punkten, déi s du brauchs.

Systeminformatiounen (agekierzt) - OS: Windows 10 Home (2009) - CPU: Intel Core i9-13900KF - RAM: 32 GB - Storage: 1 TB NVMe (SSD) + 12 TB HDD (typ. 7200 RPM) - Controller: SATA AHCI + NVMe - VS Code: 1.106.3 - Bitdefender: Total Security Build 27.0.55.303 Reng rechneresch hätt d'Kombinatioun aus moderner CPU, 32 GB RAM an NVMe+HDD d'Last droen kënnen; den Engpass erkläert sech éischter duerch ganz héich IOPS‑Last (vill kleng Datei-Operatiounen) a Kombinatioun mat AV‑Scans a Watcher‑Interaktiounen.

Symptomer

  • VS Code (oder Cursor/VSCodium) gëtt beim Tippen/Späicheren luesen.
  • Git ass träeg, git status dauert a grousse Repos opfälleg laang.
  • CPU-Last a Bitdefender/Antimalware oder am Watcher-Prozess.

Typesch Ursaach

  • Grouss Workspaces generéieren vill Filesystem-Events.
  • Antivirus scannt déi geännert Dateien widderholl.
  • Watcher triggert weider Aarbecht → Réckoppelungsschleef.

Recommandéiert Moossnaumen

1) Workspace a Bitdefender (oder AV) ausschléissen

  • Schléiss de(n) Root-Ordner aus, an deenen däi Repos leien.
  • Bei Vagrant/Shared-Folders och dës Päd ausschléissen.

2) Tool-Caches / Temp-Ordner ausschléissen Beispiller (upassen):

  • node_modules/
  • .git/
  • Build-Output
  • grouss Caches (composer, npm, …)

3) Watcher-Last reduzéieren Wann s du net iwwerall Live-Watching brauchs:

  • generéiert Ordneren a VS Code vum Watching ausnehmen
  • riiseg „Monorepo + Vendor + Build" Kombinatiounen vermeiden

Hiwäis

  • Dat ass keng Security-Berodung, mee e Performance/Produktivitéits-Tradeoff.
  • Datum: 02.02.2026