Echtzeitkommunikation mit SignalR: Pushnachrichten und WebSockets in der Praxis

Über ASP.NET Core SignalR können Server Pushnachrichten an Webclients schicken. WebSockets werden genutzt, ansonsten dienen andere Protokolle als Fallback.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht 1 Kommentar lesen
Lesezeit: 22 Min.
Von
  • Dr. Holger Schwichtenberg
Inhaltsverzeichnis

Microsofts Open-Source-Webframework ASP.NET Core hat sich in den TechEmpower Benchmarks 2022 in den meisten Kategorien einen Top-10-Platz erkämpft und liegt in der Gesamtwertung auf Platz 7 von 142 – weit vor Konkurrenten wie PHP, Java und Node.js.

Es ist mittlerweile ein Sammelsurium verschiedener Webarchitekturen, das von Server-side Rendering (mit Model View Controller und Razor Pages) über Webservices (mit Web-APIs im REST-Stil und gRPC) bis hin zu clientseitigen Webanwendungen (mit Blazor WebAssembly und Blazor Server) sowie hybriden Apps (mit Blazor Desktop und Blazor MAUI) reicht.

Mehr zu Servern und Einrichtung
Dr. Holger Schwichtenberg

Dr. Holger Schwichtenberg ist Chief Technology Expert bei der MAXIMAGO-Softwareentwicklung. Mit dem Expertenteam bei www.IT-Visions.de bietet er zudem Beratung und Schulungen im Umfeld von Microsoft-, Java- und Webtechniken an. Er hält Vorträge auf Fachkonferenzen und ist Autor zahlreicher Fachbücher.

Weniger bekannt ist, dass ASP.NET Core mit SignalR auch einen bidirektionalen Datenaustausch zwischen einem Webserver und Clients anbietet: Nicht nur der Client darf Daten vom Webserver abrufen, sondern der Webserver kann aktiv Pushnachrichten (Signale) an angeschlossene Clients senden, wenn neue Daten vorliegen oder Daten sich geändert haben. Clients dürfen dabei Desktop- und Webclients sein, also auch Browser in der Sandbox.