- Einführung in Microservices
- Merkmale, Vorteile und Herausforderungen verteilter Systeme
- Makro- und Mikroarchitektur
- Microservices vs. Self Contained Systems (SCS)
- Architektur und Design von Microservices
- Domain Driven Design in Microservices
- API-Design und Schnittstellenstrategien
- Service-Kommunikation und Datenhaltung
- Spring Boot und Spring Cloud Grundlagen
- Wiederholung und Festigung der Spring Boot-Konzepte
- Systemarchitektur in der Cloud
- Konfigurationsmanagement mit Spring Cloud Config
- Resilienz und Fehlertoleranz
- Spring Cloud Circuit Breaker
- Resilience4j: Einsatz und Konfiguration
- Timeouts, Retries und Bulkheads
- Service Discovery und Lastverteilung
- Spring Cloud LoadBalancer
- Service Discovery mit Eureka (als Exkurs)
- Abgrenzung zu Kubernetes-nativen Lösungen
- Sicherheit in Microservices
- Sichere APIs mit OAuth 2.0 und OpenID Connect
- Spring Security in der Microservice-Welt
- Token-basierte Authentifizierung und Autorisierung
- Containerisierung und Orchestrierung
- Grundlagen von Docker und Erstellung von Dockerfiles
- Einführung in Kubernetes: Architektur und Konzepte
- Zusammenspiel von Kubernetes und Spring Cloud
- Best Practices und Ausblick
- Deployment-Strategien für Microservices
- Monitoring, Logging und Tracing (z. B. mit Spring Boot Actuator)
- Microservices im Unternehmenseinsatz
LernzieleNach dem Seminar beherrschen Sie die Umsetzung verteilter Anwendungen mit Spring Cloud, kennen die relevanten Framework-Komponenten und können Microservice-Architekturen sicher konzipieren, implementieren und betreiben. Sie verstehen sowohl die technischen Zusammenhänge als auch architektonische Prinzipien und sind in der Lage, moderne Cloud-native Anwendungen mit hoher Skalierbarkeit, Ausfallsicherheit und Wartbarkeit zu entwickeln.
ZielgruppenDieses Seminar richtet sich an erfahrene Java-Entwickler
innen und Softwarearchitekt
innen, die moderne Microservices-Anwendungen mit Spring Boot und Spring Cloud entwickeln möchten. Besonders geeignet ist es für Teams, die verteilte Systeme konzipieren, in Betrieb nehmen oder bestehende Monolithen schrittweise in Microservices überführen möchten.
Teilnahmevoraussetzungen
Sie verfügen über gute Kenntnisse in Java.
Sie haben praktische Erfahrung mit Spring oder Spring Boot.
Sie benötigen Grundkenntnisse im Umgang mit Netzwerken.
Erste Erfahrungen mit verteilten Anwendungen oder Cloud-Architekturen sind von Vorteil, aber nicht zwingend.