Skip to main content
AI EducademyAIEducademy
🌳

KI-Grundlagen

🌱
AI Seeds

KI-Kompetenz für die reale Welt

🌿
AI Sprouts

Die Grundlagen intelligenter Systeme

🌳
AI Branches

Bauen Sie mit den heutigen KI-Funktionen

🏕️
AI Canopy

Entwickeln Sie zuverlässige GenAI-Systeme

🌲
AI Forest

Versenden Sie KI-Produkte verantwortungsbewusst

🔨

KI-Meisterschaft

✏️
AI Sketch

Technische Grundlagen für KI-Entwickler

🪨
AI Chisel

Muster zur Lösung schwierigerer Probleme

⚒️
AI Craft

Entwerfen Sie Systeme, die KI skalieren

💎
AI Polish

Kommunizieren und führen Sie im KI-Zeitalter

🏆
AI Masterpiece

Der Schlussstein Ihrer Produktions-KI

🚀

Karrierebereit

🚀
Interview-Startrampe

Navigieren Sie durch den Arbeitsmarkt für KI-Ingenieure

🌟
Verhaltensinterview-Meisterschaft

Erzählen Sie die Geschichte, wie Sie Wirkung erzielen

💻
Technische Interviews

Unter Druck lösen, entwerfen und kommunizieren

🤖
AI- & ML-Interviews

Bereiten Sie sich auf moderne ML- und GenAI-Interviews vor

🏆
Angebot & Karriere

Machen Sie einen selbstbewussten und informierten nächsten Schritt

Alle Programme anzeigen→

Labor

7 Experimente geladen
🧠Neuronales Netz Spielplatz🤖KI oder Mensch?💬Prompt Labor🎨Bildgenerator😊Stimmungsanalyse💡Chatbot-Baukasten⚖️Ethik-Simulator
🎯ProbeinterviewLabor betreten→
LernreiseArtikel
🎯
Über uns

KI-Bildung für alle zugänglich machen, überall

❓
Häufige Fragen

Häufige Fragen beantwortet

🧰
KI-Tools

Sorgfältig ausgewählte Tools, die wir nutzen und empfehlen

✉️
Kontakt

Nehmen Sie Kontakt mit uns auf

⭐
Quelloffen

Öffentlich auf GitHub entwickelt

Preise
Loslegen
AI EducademyAIEducademy

© 2026 AI Educademy. Alle Rechte vorbehalten.

Lernen

  • Programme
  • Lektionen
  • Labor
  • KI-Starterkit
  • Preise

Gemeinschaft

  • GitHub
  • Mitwirken
  • Verhaltenskodex
  • Über uns
  • Häufige Fragen

Unterstützung

  • Kauf mir einen Kaffee ☕
  • Nutzungsbedingungen
  • Datenschutzerklärung
  • Kontakt
  • Sitemap
KI & Engineering Programme›⚒️ AI Craft›Lektionen›Grundlagen des Systemdesigns – Die Bausteine ​​skalierbarer Systeme
🏗️
AI Craft • Experte⏱️ 20 Min. Lesezeit

Grundlagen des Systemdesigns – Die Bausteine ​​skalierbarer Systeme

🤖

Diese Lektion wurde automatisch ins Deutsche übersetzt und noch nicht von einem Menschen geprüft. Falls etwas seltsam klingt, gilt die englische Fassung.

Warum Systemdesign wichtig ist

Jede Großanwendung besteht aus denselben Grundbausteinen. Interviewer erwarten nicht, dass Sie neue Technologien erfinden – sie möchten, dass Sie die richtigen Komponenten für ein bestimmtes Problem auswählen und kombinieren. Diese Lektion behandelt das Toolkit, nach dem Sie in jedem Design-Interview greifen werden.

Client-Server-Architektur

Im Kern folgt das Web einem einfachen Modell: Clients senden Anfragen, Server verarbeiten sie und Antworten fließen zurück. Moderne Systeme fügen jedoch Schichten zwischen diesen beiden Endpunkten hinzu, um Skalierbarkeit, Zuverlässigkeit und Leistung zu gewährleisten.

Eine typische Anfrage könnte Folgendes durchlaufen: Client → CDN → Load Balancer → API-Gateway → Anwendungsserver → Cache → Datenbank. Jede Ebene löst ein spezifisches Problem, und wenn man weiß, wann jede Ebene benötigt wird, unterscheidet man starke Kandidaten von durchschnittlichen.

💡

Beginnen Sie in Vorstellungsgesprächen immer damit, den groben Client-Server-Ablauf zu skizzieren, bevor Sie auf Einzelheiten eingehen. Es zeigt strukturiertes Denken.

Load Balancer: Traffic verteilen

Ein einzelner Server hat eine begrenzte Kapazität. Load Balancer verteilen eingehende Anfragen auf mehrere Server und verwenden dabei Strategien wie:

  • Round-Robin – Anfragen durchlaufen die Server nacheinander
  • Kleinste Verbindungen – leitet an den Server weiter, der die wenigsten aktiven Anfragen verarbeitet
  • Konsistentes Hashing – ordnet Anfragen basierend auf einem Schlüssel bestimmten Servern zu (nützlich für das Caching)

Load Balancer führen auch Gesundheitsprüfungen durch und entfernen fehlerhafte Server automatisch aus dem Pool. In Cloud-Umgebungen handhaben Dienste wie AWS ALB oder Azure Front Door dies transparent.

🧠Kurzer Check

Ein Social-Media-Feed-Dienst erhält zehnmal mehr Lese- als Schreibvorgänge. Welcher Lastausgleichsansatz stellt am besten sicher, dass Benutzer stets denselben Cache-warmen Server erreichen?

Caching: Geschwindigkeit auf jeder Ebene

Durch Caching werden häufig aufgerufene Daten näher am Verbraucher gespeichert. Es existiert auf mehreren Ebenen:

Lektion 1 von 100% abgeschlossen
←Zurück zum Programm
Weiter: Entwerfen Sie einen URL-Shortener – Ihr erstes Systemdesign-Interview→

Diskussion

Anmelden um an der Diskussion teilzunehmen

Bearbeitung vorschlagen

| Schicht | Beispiel | Latenz | |-------|---------|---------| | Browser-Cache | Statische Assets, API-Antworten | ~0ms | | CDN | Bilder, CSS, JS-Dateien | ~10-50ms | | Anwendungscache | Redis, Memcached | ~1-5ms | | Datenbank-Cache | Abfrageergebnis-Cache | ~5-10ms |

Cache-Ungültigmachung ist bekanntermaßen eines der schwierigsten Probleme im Computerbereich. Zu den gängigen Strategien gehören TTL (Time-to-Live), Write-Through (Cache bei jedem Schreibvorgang aktualisieren) und Cache-aside (Anwendung verwaltet den Cache explizit).

🤯

Phil Karltons berühmtes Zitat – „In der Informatik gibt es nur zwei schwierige Dinge: Cache-Ungültigmachung und Benennung von Dingen“ – wird so häufig zitiert, dass es in Systemdesign-Interviews praktisch ein Übergangsritus ist.

Datenbanken: SQL vs. NoSQL

Die Wahl der richtigen Datenbank ist eine der wirkungsvollsten Designentscheidungen:

SQL-Datenbanken (PostgreSQL, MySQL) bieten ACID-Transaktionen, starke Konsistenz und strukturierte Schemata. Sie zeichnen sich aus, wenn Daten klare Beziehungen aufweisen und Sie komplexe Abfragen mit Verknüpfungen benötigen.

NoSQL-Datenbanken gibt es in verschiedenen Varianten:

  • Dokumentspeicher (MongoDB) – flexible Schemata, ideal für unterschiedliche Datenstrukturen
  • Schlüsselwertspeicher (DynamoDB, Redis) – blitzschnelle Suchvorgänge nach Schlüssel
  • Breitspaltige Speicher (Cassandra) – enormer Schreibdurchsatz, verteilt durch Design
  • Graphdatenbanken (Neo4j) – beziehungsintensive Daten wie soziale Netzwerke
🧠Kurzer Check

Sie entwerfen ein System, das Benutzerprofile mit sich häufig ändernden, halbstrukturierten Daten (unterschiedliche Felder pro Benutzertyp) speichert. Welcher Datenbanktyp passt am besten?

Nachrichtenwarteschlangen: Asynchrone Verarbeitung

Nicht jede Operation erfordert eine sofortige Reaktion. Nachrichtenwarteschlangen (RabbitMQ, Apache Kafka, AWS SQS) entkoppeln Produzenten von Konsumenten und ermöglichen Folgendes:

  • Asynchrone Verarbeitung – Senden Sie nach der Anmeldung eine E-Mail, ohne die Antwort zu blockieren
  • Lastausgleich – Absorbiert Verkehrsspitzen durch Puffern von Anfragen
  • Fehlertoleranz – Wenn ein Verbraucher abstürzt, warten Nachrichten in der Warteschlange

Kafka verdient besondere Erwähnung: Es handelt sich nicht nur um eine Warteschlange, sondern um ein verteiltes Ereignisprotokoll, das ereignisgesteuerte Architekturen ermöglicht, in denen mehrere Verbraucher unabhängig voneinander denselben Ereignisstrom verarbeiten können.

Architekturdiagramm mit Darstellung von Client, Load Balancer, Anwendungsservern, Cache-Schicht, Datenbank und Nachrichtenwarteschlange
Die grundlegenden Bausteine ​​eines skalierbaren Systems – jede Schicht befasst sich mit einem bestimmten Anliegen.

Microservices vs. Monolith

| Aspekt | Monolith | Microservices | |--------|----------|---------------| | Bereitstellung | Einzelgerät | Unabhängige Dienstleistungen | | Skalierung | Alles zusammen skalieren | Skalieren Sie einzelne Services | | Komplexität | Einfacher zu starten | Betriebsaufwand | | Daten | Gemeinsame Datenbank | Datenbank pro Dienst |

Monolith starten, Microservices bei Bedarf extrahieren. Die meisten Interviewer schätzen Kandidaten, die anerkennen, dass Microservices zu verteilter Systemkomplexität führen (Netzwerkfehler, Datenkonsistenz, Bereitstellungsorchestrierung) und nicht immer die richtige Wahl sind.

🤔
Think about it:

Netflix ist bekanntermaßen im Laufe mehrerer Jahre von einem Monolithen zu Mikrodiensten migriert. Aber Shopify, das Transaktionen in Milliardenhöhe abwickelt, verfügt immer noch über einen modularen Monolithen. Welche Faktoren könnten dafür sorgen, dass ein Ansatz für ein bestimmtes Unternehmen besser ist als der andere?

CAP-Theorem vereinfacht

Das CAP-Theorem besagt, dass ein verteiltes System nur zwei von drei Eigenschaften gleichzeitig garantieren kann:

  • Konsistenz – jeder Lesevorgang gibt den letzten Schreibvorgang zurück
  • Verfügbarkeit – jede Anfrage erhält eine Antwort
  • Partitionstoleranz – das System läuft trotz Netzwerkausfällen weiter

Da Netzwerkpartitionen in verteilten Systemen unvermeidlich sind, liegt die eigentliche Wahl zwischen CP (Konsistenz vor Verfügbarkeit) und AP (Verfügbarkeit vor Konsistenz).

  • CP-Systeme (z. B. HBase, MongoDB mit Mehrheitslesevorgängen) – geben Fehler statt veralteter Daten zurück
  • AP-Systeme (z. B. Cassandra, DynamoDB) – reagieren immer, aber die Daten sind möglicherweise etwas veraltet
🧠Kurzer Check

Sie entwerfen ein Banktransaktionssystem, bei dem falsche Salden zu finanziellen Verlusten führen können. Welchen GAP-Kompromiss sollten Sie priorisieren?

Das Interview-Framework

Wenn Sie ein Systemdesign-Interview beginnen, befolgen Sie diese Struktur:

  1. Anforderungen – funktionale und nichtfunktionale Anforderungen klären (5 Min.)
  2. API-Design – Definieren Sie die wichtigsten Endpunkte oder Schnittstellen (5 Min.)
  3. Datenmodell – Datenbanken auswählen und Schemata definieren (5 Min.)
  4. High-Level-Architektur – Skizzieren Sie das System anhand der heutigen Bausteine (10 Min.)
  5. Deep Dives – Engpässe skalieren, Fehler bewältigen, optimieren (15 Min.)
🤔
Think about it:

Denken Sie an ein System, das Sie täglich nutzen – Instagram, Uber oder Spotify. Können Sie erkennen, welche Bausteine ​​aus dieser Lektion wahrscheinlich verwendet werden? Wo würde der Load Balancer sitzen? Was würde zwischengespeichert werden? Welcher Datenbanktyp passt zu seinem Datenmodell?

Wichtige Erkenntnisse

  • Jedes skalierbare System nutzt die gleichen Kernbausteine – lernen Sie sie einmal und wenden Sie sie überall an – Load Balancer, Caches und Nachrichtenwarteschlangen lösen jeweils unterschiedliche Skalierungsherausforderungen
  • Die Wahl der Datenbank (SQL vs. NoSQL) hängt von der Datenform, den Konsistenzanforderungen und den Zugriffsmustern ab
  • Das CAP-Theorem erzwingt Kompromisse – wissen Sie, welche Seite Ihr System bevorzugen sollte
  • Befolgen Sie das strukturierte Interview-Framework: Anforderungen → API → Daten → Architektur → Tiefe Einblicke

Als nächstes wenden wir diese Grundlagen an, um einen URL-Shortener von Grund auf zu entwerfen.