Ein praxisnaher Kurs für reaktionsfähige, belastbare und effiziente Anwendungen mit Reactive Programming. Teilnehmende lernen Stream-Denken, Kernoperatoren, Backpressure, Tests und Integrationsmuster für reale Systeme.
Sie modellieren Daten und Ereignisse als Streams, nutzen zentrale Operatoren sicher, beherrschen Backpressure, testen reaktive Flows und integrieren HTTP, Messaging und Datenbanken.
• Routine in einer modernen Programmiersprache auf der JVM oder in JavaScript
• Grundkenntnisse zu asynchronem Code und HTTP APIs
*Wir passen den Kursaufbau und die Inhalte an Ihre spezifischen Anforderungen und relevanten Anwendungsfälle an.
Modul 1: Reaktive Denkweise und Bausteine
• Welche Probleme Reactive Programming löst: Reaktionsfähigkeit, Elastizität, Ressourceneffizienz
• Zentrale Abstraktionen: Streams, Signale, Subscriber, Scheduler
• Cold vs Hot Publisher und passende Einsatzfälle
• Observables, Flux oder Flowable oder Streams Begriffe in Libraries
Modul 2: Streams erzeugen und transformieren
• Streams aus Collections, Timern, Callbacks und I/O aufbauen
• Map, Filter, Reduce und das Operator-Pipeline-Konzept
• FlatMap vs concatMap vs switchMap Abwägungen
• Fehlerbehandlung: onError, Retries mit Backoff und Fallbacks
Modul 3: Kombinieren und aufteilen
• Merge-, Concat-, Zip- und WithLatestFrom-Muster
• Window, Buffer, groupBy für Batching und Partitionierung
• Debounce, Throttle, Sample für verrauschte Quellen
• Idempotenz und Ordnungsgarantien in Pipelines
Modul 4: Backpressure und Scheduling
• Warum Backpressure wichtig ist und typische Anti-Muster
• Request-Steuerung und Strategien: Drop, begrenztes Buffering, Latest
• Threading und Scheduling: subscribeOn vs observeOn
• CPU bound und I/O bound Arbeit koordinieren
Modul 5: Reaktives I/O
• HTTP Clients und Server: Request-Verarbeitung als Streams
• Messaging und Event Streams: Kafka oder NATS oder AMQP im Überblick
• Datenbanken: reaktive Treiber, Pagination und Timeouts
• Blockierenden Code mit begrenzten Thread Pools überbrücken
Modul 6: Testbarkeit und Observability
• Unit Tests für Operatoren mit virtueller Zeit
• Integrationstests mit kontrollierten Publishern und Probes
• Metriken und Tracing für Flows: Rate, Lag, Drops, Retries
• Logging-Strategien mit Kontext ohne Log-Flut
Modul 7: Muster und Architektur
• Komposition statt Vererbung und pure Funktionen an den Rändern
• Circuit Breaker, Timeouts und Bulkheads im reaktiven Stil
• Caching und Deduplikation ohne Blockieren
• Shutdown, Cancellation und Resource Cleanup korrekt handhaben
Modul 8: Performance und Rollout
• Profiling für Queues, Scheduler und Allokationen
• Backpressure-Tuning-Checkliste pro Endpoint oder Stream
• Sichere Rollouts: Feature Flags und Canaries
• Nächste Schritte und Referenz-Vorlagen
Praxisnahes Lernen mit erfahrenen Trainern an Ihrem Standort für Organisationen.
Neue Fähigkeiten erlernen, angeleitet von erfahrenen Trainern von überall.