WebSockets

Ein Schlumpf

Die Kommunikation zwischen Browser und Server erinnert mich momentan irgendwie an die Schlümpfe. Es läuft immer nach dem Motto “Papa Schlumpf, wie weit ist es denn noch?” Worauf der der Server Papa Schlumpf antwortet “Nicht mehr weit.”. Das ganze wiederholt sich andauernd und hat einen entscheidenden Nachteil: Es verursacht Last auf dem Server, wo wir sie nicht wirklich benötigen.

Mit HTML5 bietet sich uns hier eine neue Möglichkeit die Kommunikation zwischen Client und Server zu realisieren: WebSockets.

Technisch betrachtet startet das WebSocket-Protokoll wie ein ‘normaler’ http-Request/Response-Zyklus, nur, dass nach der Übertragung der HTTP-Request- und Response-Header die zugrundeliegende TCP-Connection bestehen und dadurch für binäre bzw. Zeichenketten-Übertragung in beide Richtungen frei wird. Dadurch kann auch der Server zu jedem Zeitpunkt Daten zum Client schicken. Zudem wird der weitere Protokoll-Overhead im vergleich zu HTTP stark reduziert (im Idealfall nur 2 Bytes zusätzlich pro Text-Nachricht und Richtung).Wikipedia

Was für einen kleinen Blog eher uninteressant ist macht für größere Applikationen schon mehr Sinn. Noch kann man WebSockets nur mit Safari und Chrome nutzen aber wer sich ein wenig mit JavaScript auskennt kann hier eine schicke Fallback-Lösung entwickeln.

Neugierig? Ein Blick auf nettuts.com lohnt sich: Start using HTML5 WebSockets today

Foto Trevor Coulthart@flickr