Echtzeitkommunikation hält Verbindungen über längere Zeit offen und verändert Sicherheits-, Zustands- und Betriebsanforderungen. Ein erfolgreicher Handshake garantiert weder dauerhaft gültige Berechtigungen noch zuverlässige Zustellung.
Der Kurs entwickelt ein Gateway als dünnen Transportadapter. Fachliche Ereignisse, Präsenz, Räume und Nachrichtenverträge werden getrennt modelliert; Skalierung und Wiederanlauf werden von Beginn an berücksichtigt.
Inhaltsübersicht
- Lernziele
- Gateway-Architektur und Ereignisverträge
- Authentifizierung und Autorisierung
- Zustand, Räume und zuverlässige Interaktion
- Skalierung, Backpressure und Betrieb
- Automatisierte Tests für Echtzeitabläufe
- Praxisprojekt: Live-Dashboard mit Benachrichtigungen
- Prüfpunkte und typische Fehler
Lernziele
- Gateway, Adapter, Verbindungslebenszyklus und Ereignisverträge strukturiert aufbauen.
- Verbindungsaufbau und einzelne Nachrichten sicher authentifizieren und autorisieren.
- Räume, Präsenz, Zustände und fachliche Ereignisse konsistent modellieren.
- Reconnect, Heartbeats, Zeitüberschreitungen, Bestätigungen und verpasste Ereignisse definieren.
- Mehrere Instanzen über gemeinsamen Adapter oder Broker skalieren.
- Gateway-, Client- und Mehrinstanz-Szenarien automatisiert testen.
Gateway-Architektur und Ereignisverträge
Das Gateway übersetzt Transportereignisse in Anwendungsbefehle und fachliche Ausgaben. Fachlogik bleibt in Services und kann unabhängig vom Protokoll getestet werden.
- Echtzeit-Anwendungsfälle und notwendige Zustellcharakteristik erfassen.
- Gateway in ein fachliches Modul integrieren und Application Services injizieren.
- Ereignisnamen, Payload-Schemata, Versionen und Fehlerantworten definieren.
- Eingehende Payloads validieren und unbekannte Felder kontrollieren.
- Bestätigungen für kritische Nachrichten und Fire-and-forget für optionale Updates unterscheiden.
- HTTP- und WebSocket-Zugriffe auf gemeinsame Fachservices ausrichten.
Entscheidungskriterien und Hinweise
- Gateway-Code bleibt ein Transportadapter und enthält keine umfangreiche Fachlogik.
- Ereignisverträge sind versioniert und unabhängig von internen Datenmodellen.
Authentifizierung und Autorisierung
Die Identität wird beim Verbindungsaufbau geprüft, kann aber während einer langen Verbindung ablaufen oder gesperrt werden. Berechtigungen werden zusätzlich pro Aktion und Raum bewertet.
- Token aus einem kontrollierten Handshake-Feld lesen und validieren.
- Verbindungsidentität serverseitig mit minimalen Claims speichern.
- Ablauf, Rotation, Sperrung und erzwungenen Verbindungsabbau definieren.
- Raumbeitritt und Nachrichtenversand mit fachlichen Policies prüfen.
- Mandanten- und Objektgrenzen auch bei Broadcasts einhalten.
- Fehlerantworten vereinheitlichen und sensible Gründe nicht offenlegen.
- Verbindungs- und Nachrichtenraten pro Identität begrenzen.
Entscheidungskriterien und Hinweise
- Handshake-Authentifizierung ersetzt keine Autorisierung einzelner Aktionen.
- Lang laufende Verbindungen reagieren auf Sperrung und Token-Ablauf.
Zustand, Räume und zuverlässige Interaktion
Temporärer Verbindungszustand darf nicht mit dauerhaftem Fachzustand verwechselt werden. Präsenz ist flüchtig; fachliche Nachrichten benötigen persistente Speicher oder rekonstruierbare Ereignisprotokolle.
- Räume nach fachlicher Ressource und Mandant benennen und serverseitig prüfen.
- Präsenzmodell mit Verbindungs-ID, Nutzer-ID und Ablaufzeit definieren.
- Mehrfachverbindungen desselben Nutzers bewusst behandeln.
- Heartbeats, Leerlaufzeit und Server-Shutdown für sauberen Abbau konfigurieren.
- Bestätigungen, Sequenznummern oder Revisionsstände für kritische Updates verwenden.
- Reconnect mit Zustandssnapshot und anschließenden Deltas gestalten.
- Verpasste Ereignisse über Historie oder fachliche Neusynchronisierung behandeln.
Entscheidungskriterien und Hinweise
- Präsenzdaten sind flüchtig und nicht die alleinige fachliche Wahrheit.
- Reconnect besitzt einen klaren Weg zur Zustandsrekonstruktion.
Skalierung, Backpressure und Betrieb
Bei mehreren Instanzen liegen Clients desselben Raums auf unterschiedlichen Prozessen. Ein gemeinsamer Adapter oder Broker verteilt Ereignisse; Lastgrenzen bleiben Aufgabe der Anwendung.
- Sticky Sessions nur bei technischer Notwendigkeit und mit dokumentierten Folgen einsetzen.
- Gemeinsamen Adapter oder Broker für Broadcasts und Raumzustand konfigurieren.
- Langsame Clients, Sendepuffer und maximale Payload-Größe begrenzen.
- Nachrichten priorisieren, zusammenfassen oder verwerfen, wenn Aktualisierungen überholt sind.
- Metriken für Verbindungen, Raumgrößen, Raten, Fehler und Disconnects erfassen.
- Kontrolliertes Herunterfahren mit Verbindungsdrain und Reconnect-Hinweis implementieren.
- Mehrinstanz-, Broker- und Netzunterbrechungen testen.
Entscheidungskriterien und Hinweise
- Horizontale Skalierung wird mit realen Mehrinstanztests nachgewiesen.
- Backpressure verhindert unkontrolliertes Speicher- und Event-Loop-Wachstum.
Automatisierte Tests für Echtzeitabläufe
Tests verwenden reale Client-Verbindungen für Protokoll- und Lebenszyklusfragen. Fachlogik und Policies bleiben zusätzlich als schnelle Unit-Tests abgesichert.
- Gateway mit Testanwendung auf zufälligem Port starten.
- Client mit gültiger und ungültiger Identität verbinden.
- Raumbeitritt, Broadcast, Bestätigung und Fehlerantwort prüfen.
- Token-Ablauf, Sperrung und erzwungenen Disconnect simulieren.
- Reconnect und Zustandsneusynchronisierung testen.
- Langsamen Client und Nachrichtenburst zur Backpressure-Prüfung erzeugen.
- Zwei Anwendungsinstanzen mit gemeinsamem Adapter verbinden.
Entscheidungskriterien und Hinweise
- Tests schließen Verbindungen und offene Handles kontrolliert.
- Zeitabhängige Abläufe verwenden feste Grenzen und nachvollziehbare Ereignisse.
Praxisprojekt: Live-Dashboard mit Benachrichtigungen
Ein Live-Dashboard zeigt mandantenbezogene Auftragszustände und erlaubt bestätigte Statusaktionen. Nutzer treten nur berechtigten Räumen bei; Änderungen werden als versionierte Ereignisse verteilt.
Das Labor umfasst Mehrfachverbindungen, Reconnect, Token-Ablauf, langsame Clients und zwei Serverinstanzen. Ein Snapshot-Endpunkt stellt den Zustand nach einer Unterbrechung wieder her.
- Ereignisvertrag, Räume, Berechtigungen und Zustandsquelle definieren.
- Gateway, Validierung und Application-Service-Anbindung implementieren.
- Handshake-Authentifizierung und Policy-Prüfung für Raum sowie Aktion ergänzen.
- Bestätigungen, Sequenzstände und Reconnect-Snapshot umsetzen.
- Gemeinsamen Adapter für zwei Instanzen konfigurieren.
- Rate Limits, Payload-Grenzen und Backpressure-Verhalten einrichten.
- Client-, Sicherheits-, Reconnect- und Mehrinstanztests ausführen.
- Verbindungs-, Nachrichten- und Fehlertelemetrie prüfen.
Prüfpunkte und typische Fehler
- Gateway enthält keine umfangreiche Fachlogik.
- Berechtigungen werden pro Raum und Aktion geprüft.
- Flüchtige Präsenzdaten sind nicht die alleinige fachliche Wahrheit.
- Reconnect besitzt einen definierten Weg zur Zustandsneusynchronisierung.
- Langsame Clients und Nachrichtenbursts belasten das System nicht unkontrolliert.
- Horizontale Skalierung wird mit Mehrinstanz- und Adaptertests nachgewiesen.
Fachbereichsleitung und Trainerteam
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de -

Paul Goldschmidt
Telefon: + 49 (221) 74740055
E-Mail: paul.goldschmidt@seminar-experts.de
Seminardetails
| Dauer: | 2 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weiterer Tag 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.198 zzgl. MwSt. Inhaus: € 3.400 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | NestJS- und Full-Stack-Entwickler, Softwarearchitekten und Teams für Dashboards, Kollaboration, Benachrichtigungen oder Live-Daten |
| Voraussetzungen: | Gute TypeScript- und NestJS-Kenntnisse, Erfahrung mit HTTP-APIs und asynchroner Programmierung; Client-Grundkenntnisse sind hilfreich |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Fachvortrag, Live-Coding, Demonstrationen, praktische Übungen und strukturierte Auswertung am System |
| Seminararten: | Öffentlich, Webinar, Inhouse, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
