Leichte Alternative zu socket.io nur für den Transport

8

Gibt es eine leichte Alternative zu socket.io nur für den Transport?

Ich habe eine node.js-Anwendung, die socket.io einfach als Nachrichtentransport verwendet. Meine Anwendung verwaltet Sitzungen und Nachrichtenrouting allein, ich verwende einfach socket.io für den Transport - websocket + was auch immer die Standard-Fallback für ältere Browser ist.

Die neuere Version von socket.io scheint immer schwerer zu werden, jetzt kommt Redis-Unterstützung, die ich absolut nicht brauche.

    
voidvector 19.08.2012, 02:17
quelle

4 Antworten

7

Das Modul ws ist erstaunlich schnell (siehe benchmarks ), gut getestet, sehr, sehr, sehr leicht, aber ohne dass man die Abstürze selbst machen müsste, und darüber hinaus keinen Event-Emitter . Aber es ist erstaunlich, nur zu transportieren, wenn es das ist, was Sie wollen. Wenn du die "Sitzung" eines armen Mannes willst, befestige einfach etwas an das ws-Objekt:

%Vor%

Jetzt fehlt nur noch ein Event-Emitter ...

    
João Pinto Jerónimo 19.08.2012, 10:51
quelle
4

Es gibt andere Alternativen. faye - Ссылка ist einer von ihnen. Es ähnelt socket.io, verwendet aber das Protokoll Bayeux . Der andere, wenn Sie keinen Server ausführen möchten - pusher - Ссылка .

    
First Zero 19.08.2012 06:07
quelle
2

Schauen Sie sich sock.js an - es versucht, browserübergreifende Web-Sockets api und nichts mehr zu implementieren.

    
Andrey Sidorov 19.08.2012 10:38
quelle
0

Für Node.js können Sie versuchen ws + ws-wrapper + ws-server-wrapper . ws-wrapper ist eine Lightweight-Bibliothek, die WebSockets einige Event-Handler-Funktionen hinzufügt ... ähnlich wie in socket.io. Außerdem erhalten Sie Promise-basierte Anfragen und Namensräume.

Wie von anderen erwähnt, ist das ws -Modul sehr schnell, leicht und wird sogar von socket.io unter der Haube verwendet. Native WebSockets werden jetzt von allen modernen Browsern unterstützt , so dass es albern erscheint, andere Transporte für die meisten Echtzeit-Webanwendungen zu unterstützen.

ws-wrapper implementiert nicht einmal automatisches Reconnect. Wenn Sie das möchten, lesen Sie Diese Wiki-Seite beschreibt einen exponentiellen Backoff-Ansatz

Schließlich ist ws-server-wrapper die Bibliothek für die Serverseite. Sie können beispielsweise folgende Aktionen ausführen: Senden einer Nachricht an alle verbundenen WebSockets, Abhören von Ereignissen von allen WebSockets usw.

Disclaimer: Ich bin der Autor von ws-wrapper. :)

    
BMiner 28.08.2017 16:38
quelle

Tags und Links