Seminarinformationen
Seminar - Ziel
In dem 3-tägigen Seminar „Microservices mit dem Spring Framework“ vertiefen Sie Ihre Kenntnisse im Umgang mit dem Spring-Framework und erhalten eine praxisorientierte Einführung in Spring MVC, Spring Cloud und Spring Boot. Dabei lernen Sie den Architekturstil der Microservices kennen, bei dem Anwendungen aus kleinen, unabhängigen Diensten bestehen, die sich um eine bestimmte Geschäftsdomäne gruppieren. Diese Struktur fördert die Skalierbarkeit und Effizienz von Entwicklungsteams. Spring unterstützt Sie dabei, solche Anwendungen schnell und produktiv umzusetzen.
Das Seminar startet mit einer Einführung in zentrale Konzepte wie Controller, Models, Services, Spring Boot-Anwendungen sowie die Grundlagen von Spring MVC und Spring Configuration Management. Im weiteren Verlauf befassen Sie sich mit der Entwicklung und dem Testen von REST Services in Spring. Den Abschluss bildet eine praktische Übung, in der Sie das erworbene Wissen anwenden und einen Microservice selbst umsetzen.
Teilnehmer - Zielgruppe
- Java-Entwickler
- Softwarearchitekten, die Microservices mit Spring Boot entwickeln möchten
Kurs - Voraussetzungen
Für eine optimale Teilnahme am Kurs empfehlen wir folgende Vorkenntnisse:
- gute Java-Kenntnisse
- Grundkenntnisse in Spring Boot
Seminardauer
- 3 Tage
- 09:00 Uhr bis 17:00 Uhr
Schulungsunterlagen
Seminar-Inhalt / Agenda
Microservices — Einordnung
- Motivation und Preis: wann Microservices, wann der Monolith reicht
- Datenhoheit, unabhängige Deployments, 12-Factor-Prinzipien
- Die Fallstudien-Landschaft: drei Services, Weboberfläche, Broker
Der einzelne Service: REST-Kern
- REST-API mit sauberen Statuscodes; zentrale Fehlerantworten mit ProblemDetail (RFC 9457)
- API-Dokumentation mit OpenAPI/springdoc (Swagger-UI)
- Persistenz mit Spring Data JPA, Flyway-Migrationen und PostgreSQL per Docker Compose
- Integrationstests mit Testcontainers (
@ServiceConnection) - Aggregierende Endpunkte für die Oberfläche (Backend for Frontend)
Synchrone Kommunikation
- Zweiter Service mit eigener Datenbank — Datenhoheit statt geteiltem Code
- Deklarative HTTP Interfaces und
RestClient; die Client-Generationen im Überblick - Timeouts von Anfang an — und was ohne sie passiert
Asynchrone Kommunikation: Messaging
- RabbitMQ: Exchange, Queue, Binding, JSON-Events
- Entkopplung erleben: die Queue puffert Consumer-Ausfälle
- At-least-once-Zustellung, Idempotenz, Retry → Dead Letter Queue
- Broker-Landschaft: RabbitMQ, Kafka und ActiveMQ Artemis im Vergleich; Einordnung von Spring Cloud Stream
Resilienz nach „Release It!"
- Stability-Antipatterns (Nygard) und ihre Gegenmuster
- Chaos-Schalter: Latenz und Fehlerrate zur Laufzeit zuschalten
- Resilience4j: Retry, Circuit Breaker, Bulkhead und Fallbacks
- Breaker-Zustände im Actuator beobachten; typische Konfigurationsfallen
Observability
- Die drei Signale: Metriken, Traces, Logs
- Actuator absichern; Spring Boot Admin
- OpenTelemetry: Traces, Metriken und Logs per OTLP nach Grafana (LGTM-Stack)
- Ein Trace über REST- und Messaging-Grenzen; Log-Korrelation über Trace-IDs
Spring Cloud
- Config Server: zentrale Konfiguration mit
spring.config.import; Refresh zur Laufzeit - Service Discovery mit Eureka; client-seitiges Load Balancing auf Service-Namen
- Gateway: ein Einstiegspunkt für Oberfläche und alle APIs
- Einordnung: Spring Cloud in der Kubernetes-Ära
Container und Kubernetes
- OCI-Images mit Cloud Native Buildpacks — ohne Dockerfile
- Die ganze Landschaft in einem Docker Compose
- Kubernetes lokal: Deployment, Service, ConfigMap, Probes, Self-Healing
- Deployment-Landkarte: Kubernetes, Cloud-Plattformen und was aus Azure Spring Apps und Cloud Foundry geworden ist
Weitere Schulungen zu Thema Java
- u.a. in Nürnberg, Berlin, Stuttgart, München, KölnDas Seminar vermittelt Kenntnisse im Einsatz von Eclipse in Java SE/EE-Programmierung.
- u.a. in Nürnberg, Berlin, Stuttgart, München, KölnDas Seminar unterrichtet Sie in den wichtigsten Technologien um XML in Verbindung mit Java. Nach einem Überblick über Grundlagen von XML werden Sie XML-basierte Anwendungen entwerfen und validieren. Sie erhalten einen Einblick in das SAX- und DOM-Parsing.
- u.a. in Frankfurt am Main, Stuttgart, Mannheim, Offenbach, KasselIn diesem 2-tägigen Seminar "Jakarta EE - Intensivkurs Messaging mit JMS" erfahren Sie, wie Sie Message-getriebene Architekturen mithilfe von Jakarta Message Service (JMS) umsetzen. JMS ist ein zentraler Bestandteil der Jakarta Enterprise Edition (Java EE) und ...
- u.a. in Köln, Leipzig, Nürnberg, Zürich, KoblenzIn diesem 2-tägigen Seminar „Einführung in Continuous Delivery“ setzen Sie sich mit der Motivation und den Konzepten von Continuous Delivery sowie dessen Verbindung zum DevOps-Paradigma auseinander. Sie erhalten einen Überblick über Continuous Integration, Continuous ...