Der sparsamste Server ist der, der gar nicht erst läuft. Das klingt banal, ist aber überraschend selten Realität. Untersuchungen in Rechenzentren haben wiederholt gezeigt, dass ein erheblicher Teil der Server – in manchen Studien rund ein Drittel – Strom zieht, ohne noch irgendeine sinnvolle Aufgabe zu erfüllen. Man nennt sie treffend „komatös": eingeschaltet, angebunden, gewartet – und völlig ohne Zweck. Es ist der digitale Zweitkühlschrank in der Garage, der seit Jahren leer vor sich hin kühlt.
Das Erfolgskriterium von Guideline 4.5 (meine Übersetzung des Originals):
Ungenutzte Umgebungen: Verringere die Zahl aktiver Umgebungen, indem Du ungenutzte oder redundante virtuelle und physische Umgebungen (etwa Container und virtuelle Maschinen) deaktivierst, offline nimmst oder entfernst – überall dort, wo dies ohne Einbußen bei den erforderlichen Sicherheits-, Isolations- oder Compliance-Garantien möglich ist. Bewerte laufende Dienste auf dieselbe Weise. Ebenso Codebasen und Konfigurationen für ungenutzte Branches, Umgebungen und Dienste: Entferne, was nicht mehr benötigt wird.
Meine Einordnung
Dieses Kriterium beschreibt eine besondere Art von Verschwendung – die durch Unterlassung. Niemand baut absichtlich eine überflüssige VM. Sie entsteht, weil eine Umgebung „für den Moment" hochgefahren und dann nie wieder abgeschaltet wird. Das Tückische daran: Weil sie einmal lief, traut sich niemand mehr, sie zu löschen.
An dieser Stelle wird meine Website zum Anschauungsobjekt für den entspannten Fall. datensm.art ist eine statische Hugo-Seite. Es gibt keinen Applikationsserver, der dauerhaft laufen muss, keinen Container, der orchestriert werden will, keine VM, die im Leerlauf auf Anfragen wartet. Das fertige HTML liegt auf dem Server, der Webserver liefert es aus. Den Kern dieser Guideline erfülle ich also nicht durch Aufräumen, sondern durch die Entscheidung, diese Komplexität gar nicht erst aufzubauen. Das ist der wirksamste Hebel überhaupt: Was nie entsteht, muss auch nicht abgeschaltet werden.
Ganz entkommt aber niemand. Der zweite Teil des Kriteriums – ungenutzte Branches, Dienste und Konfigurationen – gilt auch für schlanke Setups. Bei mir läuft ein Git-basiertes Deployment mit einem nächtlichen Cronjob. Beides ist minimal, aber genau die Sorte Ding, die man im Blick behalten sollte: ein alter Feature-Branch vom letzten Theme-Umbau, ein Cronjob für eine Aufgabe, die es nicht mehr gibt, ein PHP-Werkzeug, das ich einmal gebaut und dann vergessen habe. Ballast sammelt sich leise.
Wo ich weiter gehe
Die Guideline sagt „unnötige Umgebungen vermeiden". Ich verschärfe das zu: gar nicht erst unnötig anlegen. Jeder Container, der „nur kurz zum Testen" gestartet wird, hat die Tendenz, dauerhaft zu werden. Die Suffizienz beginnt vor der ersten Zeile Konfiguration – bei der Frage, ob es die zusätzliche Umgebung überhaupt braucht.
Leerlauf ist eben nicht kostenlos. Eine reservierte Umgebung belegt Ressourcen, ob sie arbeitet oder nicht, und jede zusätzliche Umgebung vergrößert außerdem die Angriffsfläche, die gepflegt werden muss. Der vermeintlich harmlose Zombie-Dienst kostet doppelt: einmal Energie, einmal Aufmerksamkeit.
Dein erster Schritt heute
Du brauchst kein großes Werkzeug, nur eine ehrliche Inventur.
Die sauberste Umgebung ist die, die gar nicht erst entsteht. Und die teuerste ist die, die läuft, ohne dass sich noch jemand an ihren Zweck erinnert.
Quellen: W3C-Fassung von Guideline 4.5 · Interpretation bei Sustainable Web Design
