iX 1/2022
S. 92
Wissen
Webentwicklung

Phoenix LiveView: Echtzeit-Webapplikationen serverseitig entwickeln

Schneller Feuervogel

Stefan Wintermeyer

Mit Phoenix LiveView gelingt die Entwicklung performanter, hochskalierbarer Echtzeitanwendungen für den Browser ohne clientseitige JavaScript-Frameworks. Ein Beispiel erklärt das Prinzip.

Viele moderne Webseiten benötigen Echtzeiteigenschaften, weil sie live sich ständig ändernde Daten vom Server anzeigen. Eine Chatapplikation ist dafür ein klassisches Beispiel: Der Benutzer gibt etwas in einem Eingabefeld ein, klickt auf einen Button und sofort wird diese Eingabe auf seiner eigenen und auf den Webseiten der anderen Chatteilnehmer angezeigt.

Webserver und Browser kommunizieren dabei meist über WebSockets oder, falls der Server nicht aktiv Daten pushen muss, auch klassisch per HTTP GET vom Browser getriggert. Die Webseite enthält JavaScript-Code, der diese Daten dann verarbeitet und Inhalte auf der Webseite austauscht. Teilweise wird dabei der komplette HTML-Code als Kopie in einem Shadow-DOM vorgehalten und dort mit hohem Ressourcenaufwand bearbeitet. Der Transport der Daten erfolgt üblicherweise im JSON-Format. Im besten Fall fühlt sich damit die Webseite fast wie eine native Applikation an.

Kommentare lesen (1 Beitrag)