Socket.io

Bidirektionale Echtzeitkommunikation über Websockets

Das Node.js-Modul Socket.io erlaubt die bidirektionale Echtzeitübertragung von Daten mittels Websockets. Die aktuelle Version 0.7.2 unterstützt nun Namespaces, virtuelle Räume, volatile Nachrichten und selbstdefinierte Ereignisse.

Artikel veröffentlicht am , Matthias Thömmes
Socket.io: Bidirektionale Echtzeitkommunikation über Websockets
(Bild: Socket.io)

Mit Socket.io bieten die Learnboost Labs eine Programmbibliothek zur bidirektionalen Echtzeitübertragung von Daten mittels Websockets. Socket.io wird als Modul für den ereignisorientierten Server Node.js angeboten und steht seit kurzem in der Version 0.7.2 zum Download bereit.

Überarbeitetes Protokoll

Das in Socket.io genutzte Protokoll wurde um ein Revisionssystem erweitert, um die Kompatibilität zwischen den auf Server und Client genutzten Versionen zu wahren. Die Verbindung eines Clients kann nun durch ein neues Paket serverseitig beendet werden, außerdem gibt es serverseitige Callbacks für den Fall, dass ein Client eine Nachricht erhalten hat.

  • Socket.io
  • Socket.io
  • Socket.io
  • Node.js
Socket.io

Dazu wurde das nun auch besser dokumentierte Protokoll um weitere Nachrichtentypen erweitert. Gleichzeitig wurde der Overhead im Vergleich zu Vorgängerversionen reduziert. Die kürzlich veröffentlichten Fehlerbereinigungen in 0.7.2 beheben Probleme bei Cross-Domain-Requests.

Kanalisierung von Nachrichten durch Namespaces und virtuelle Räume

Mit Namespaces und virtuellen Räumen bietet Socket.io nun ein eigenständiges Routing, mit dem sich die Javascript-Clients fortan zu mehreren Sockets verbinden können. Diese können mittels Namespaces oder durch virtuelle Räume angesprochen werden.

Die neue Version unterstützt auch sogenannte volatile Nachrichten. Bei diesem Nachrichtentyp werden Nachrichten in einem vorab festgelegten Aktualisierungsintervall übermittelt. Clients überspringen dann Nachrichten, die sie nicht schnell genug verarbeiten können, womit Verzögerungen bei umfangreichen Echtzeitstreams vermieden werden.

Automatische Anpassung an Fähigkeiten des Clients

Die Programmbibliothek ermöglicht es Entwicklern in Node.js, neben Websockets andere Transportmethoden zu nutzen, darunter Flash-Sockets, XHR und JSONP. Auf Wunsch wählt die Bibliothek die unterstützte Methode automatisch, wobei sie gängige Browser auch in älteren Versionen unterstützt.

Mit der Einführung von Ereignissen, Callbacks für Sockets sowie einer definierbaren Ereignisschleife kann der eigene Programmcode nun deutlich vereinfacht werden, so Learnboost. Die Zahl der Unit-Tests habe sich auf 160 verdreifacht, was die Verlässlichkeit des Moduls erhöhe.

Socket.io steht unter socket.io zum Download bereit.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Quartalszahlen
So verkauft Elon Musk Teslas Schrumpfkurs als Wachstum

Nur 3 statt 20 Millionen Autos, Investitionen in neue Fabriken wurden gestrichen und die 4680-Akkus waren angeblich nie wichtig für Tesla.
Eine Analyse von Frank Wunderlich-Pfeiffer

Quartalszahlen: So verkauft Elon Musk Teslas Schrumpfkurs als Wachstum
Artikel
  1. Lebensmittellieferdienst: Getir/Gorillas schließt in Deutschland
    Lebensmittellieferdienst
    Getir/Gorillas schließt in Deutschland

    Getir, der Käufer von Gorillas, hat Milliarden US-Dollar an Bewertung verloren und ist mit seiner Europaexpansion gescheitert. Nun werden Tausende Kündigungen folgen.

  2. Bionicbee: Festos Roboterbienen fliegen im Schwarm
    Bionicbee
    Festos Roboterbienen fliegen im Schwarm

    Bisher hat Festo Insektenroboter im Schwarm laufen lassen. Die bionischen Bienen fliegen im Schwarm.

  3. Neue App von Apple: iPad bekommt nach 14 Jahren einen Taschenrechner
    Neue App von Apple
    iPad bekommt nach 14 Jahren einen Taschenrechner

    Es geschehen noch Zeichen und Wunder. Im Fall von Apples iPad sind es Plus-, Minus- und Gleichheitszeichen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • MediaMarkt: Asus Gaming-Laptop 999€ statt 1.599€ • Galaxy S23 400€ günstiger • Anker USB-Ladegeräte -45% • MSI MEG 342CDE OLED 999€ • Gamesplanet Spring Sale [Werbung]
    •  /