Infrastruktur, Cloud & DevOps · Fortgeschritten

Skalierung: horizontal, vertikal und was man wirklich braucht

In einem Satz: Bevor Sie skalieren, messen Sie, wo der Engpass ist — in den meisten Systemen ist es die Datenbank oder eine einzelne Abfrage, nicht die Zahl der Server.

Zwei Richtungen

Vertikal: eine größere Maschine. Schnell umzusetzen, gedeckelt und ein einzelner Ausfallpunkt.

Horizontal: mehr Instanzen hinter einem Lastverteiler. Erfordert, dass die App zustandslos ist — Sitzungen in einem gemeinsamen Speicher, Dateien im Objektspeicher und kein Verlass auf lokalen Speicher.

Wo man tatsächlich steckenbleibt

Datenbankverbindungen, Abfragen ohne Index, Sperren und lange synchrone Prozesse. Server zu verdoppeln, wenn der Engpass die Datenbank ist, erhöht nur den Druck.

Also: profilieren, bevor man skaliert. Eine halbe Stunde Messung spart einen Monat unnötiger Architektur.

Lesen gegen Schreiben

Die meisten Systeme lesen weit mehr, als sie schreiben. Lese-Replikate, Cache und materialisierte Sichten reichen weit, bevor eine echte Datenaufteilung nötig ist.

Im Detail

Automatische Skalierung braucht eine führende Kennzahl, keine nachlaufende: Warteschlangenlänge oder Anfragerate reagieren früher als die CPU-Auslastung. Und setzen Sie eine Obergrenze — unbegrenzte automatische Skalierung macht aus einem Schleifenfehler eine Überraschungsrechnung.