Webanwendungen: Single-Page Web Applications mit Blazor und C#

Nach dem Ende von Silverlight bietet Microsoft seit .NET Core 3.0 und C# 8.0 wieder die Programmierung interaktiver Browseranwendungen an.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht
Single-Page Web Applications mit Blazor und C#
Lesezeit: 16 Min.
Von
  • Dr. Holger Schwichtenberg
Inhaltsverzeichnis

Microsofts Neustart für die Webbrowserprogrammierung heißt ASP.NET Blazor. Auf die erste stabile Version in .NET Core 3.0 am 23.09.2019 folgte am 03.12.2019 die aktuelle Version 3.1, die man einsetzen sollte. Dabei ist zunächst nur eine von mehreren geplanten Varianten von Blazor erschienen: Blazor Server. Blazor Server ist hier allerdings nicht die Serverseite einer Client-Server-Lösung, sondern eine eigenständige Softwarearchitektur für die effiziente Entwicklung von Single-Page Web Applications (SPAs).

Bei Blazor Server (alias Server Side Blazor) läuft der C#-Programmcode auf dem Webserver. Die JavaScript-Bibliothek blazor.server.js von Microsoft überträgt jede Benutzerinteraktion zum Webserver und spiegelt jede auf dem Server erzeugte UI-Änderung im Browser wider. Die dafür notwendige kontinuierliche Kommunikation zwischen Webserver und Browser erfolgt über ASP.NET Core SignalR via WebSockets.

Die Serverseite hält dabei für jeden angeschlossenen Webbrowser ein Virtual DOM im Hauptspeicher. Das schränkt die Skalierbarkeit ein; laut Microsoft sind dennoch 20000 gleichzeitige Benutzer mit jeweils einem Klick pro Sekunde auf einem virtuellen Cloud-Server mit 4 CPUs und 14 GB RAM möglich. Das reicht nicht aus, um Google oder Facebook Konkurrenz zu machen, aber es genügt sicherlich für viele in Deutschland entwickelte Webanwendungen.