Schulungsübersicht
Einführung in verteilte Systeme
- Was ist ein verteiltes System?
- Häufige Herausforderungen: Latenz, Konsistenz und Verfügbarkeit
- Überblick über Systemkomponenten sowie Kommunikationsmodelle
Grundsätze der Skalierbarkeit
- Vertikales vs. horizontales Skalieren
- Lastverteilung und Elastizität
- Skalierung von Speicher, Rechenleistung sowie I/O-Vorgängen
Architektonische Muster
- Client-Server- sowie mehrschichtige Architekturen
- Dienstorientierte und Microservice-Architekturen
- Ereignisgesteuerte Architektur und Nachrichtenwarteschlangen
Das CAP-Theorem und Konsistenzmodelle
- Erklärung des CAP-Theorems
- Starke vs. letztendliche Konsistenz
- Auswahl zwischen Konsistenz und Verfügbarkeit
Datenverteilung und Speicherstrategien
- Partitionierung und Sharding
- Replikationsverfahren sowie Quorum-Lese-/Schreibvorgänge
- Verteilte Datenbanken und Schlüssel-Wert-Speicher
Kommunikation und Koordination in verteilten Systemen
- REST, gRPC sowie Nachrichtenbroker wie Kafka oder RabbitMQ
- Führerwahlverfahren und verteilter Konsens
- Einsatz von Zookeeper bzw. etcd zur Koordination
Fehlertoleranz und Zuverlässigkeit
- Entwicklung widerstandsfähiger Systeme sowie Elegante Fehlerbewältigung
- Wiederholungsmechanismen, Zeitüberschreitungen sowie Schutzschaltkreise
- Überwachung, Beobachtbarkeit und Chaos Engineering
Cloud-native Entwicklungsmethoden und moderne Praktiken
- Container, Orchestrierung sowie Kubernetes
- Zustandslosigkeit und Unveränderlichkeit von Komponenten
- Beste Verfahren zur Sicherheit verteilter Systeme
Zusammenfassung und weitere Schritte
Voraussetzungen
- Ein Grundverständnis von Netzwerk- und Systemdesign-Konzepten
- Erfahrung in allgemeinen Softwareentwicklungsmethoden
- Kenntnisse im Bereich Cloud Computing sowie API-Design sind von Vorteil
Zielgruppe
- Softwarearchitekten und technische Leiter
- Backend-Entwickler sowie DevOps-Spezialisten
- Systemdesigner, die skalierbare Cloud-Anwendungen entwerfen wollen
Erfahrungsberichte (3)
Bereitgestelltes Projekt, an dem wir von Anfang an arbeiten konnten, ohne Zeit für die Einrichtung von Dateien zu verlieren, die in den Übungen nicht benötigt wurden. Bereitschaft, alle Fragen der Teilnehmer zu beantworten.
Robert Walczak - Hitachi Energy
Kurs - Systems Modeling with SysML and Enterprise Architect (EA)
Maschinelle Übersetzung
Der Trainer aktualisiert den Kurs gemäß den Erwartungen der Lernenden
Alexandru
Kurs - Software Architecture in Cloud
Maschinelle Übersetzung
Übungsaufgaben in EA durchführen.
Pawel - Krajowa Szkola Skarbowosci
Kurs - UML in Enterprise Architect (workshops)
Maschinelle Übersetzung