Nützliche Bibliotheken für die Arbeit mit Web-Sockets und Knoten.js


WebSockets ermöglichen es, eine interaktive Kommunikationssitzung zwischen dem Browser des Benutzers und einem Server zu öffnen, Nachrichten an einen Server zu senden und ereignisgesteuerte Antworten zu empfangen, ohne den Server nach einer Antwort abfragen zu müssen.
Obwohl einige Entwickler sich dafür entscheiden, mit der Websocket-API für die asynchrone Kommunikation zwischen Browsern und Servern zu arbeiten, erfordern Probleme wie Leistung, Umgang mit fehlerhaften Verbindungen, Umgang mit Authentifizierung und Autorisierung oder Skalierbarkeit möglicherweise ein Framework / eine Bibliothek.
Um Zeit zu sparen, finden Sie hier eine Auswahl nützlicher und aktiv gewarteter Bibliotheken, die sich als nützlich erweisen können. Fühlen Sie sich frei, Ihre eigenen Vorschläge hinzuzufügen.
Tipp: Verwenden Sie Bit, um Komponenten und Module zwischen Projekten zu teilen und wiederzuverwenden. Es hilft Ihrem Team, sich zusammenzuschließen, die Entwicklung zu beschleunigen und synchron zu bleiben.

Lesen Sie auch:
Wie wir ein Designsystem erstellen und wie wir Micro-Frontends erstellen 🚀
Ein weit verbreiteter und verwendeter WebSocket-Wrapper / API mit über 43K Sternen. Bestehend aus einem Knoten.js-Server und eine Javascript-Client-Bibliothek, socket.io bietet Zuverlässigkeit für den Umgang mit Proxys und Load Balancern sowie persönlicher Firewall- und Antivirensoftware und unterstützt sogar binäres Streaming. Es wird von Microsoft, Zendesk und Trello verwendet und bietet sogar Echtzeitanalysen und kann für eine Vielzahl von Anwendungsfällen verwendet werden, von einfachen Chats bis hin zu IOT. Hier ist ein nützliches Tutorial von @davidwalshblog.
ws
Mit 9k Sternen WS ist ein beliebter WebSocket ist eine Client / Server-Bibliothek für Knoten.js, das hilft, Dinge unter dem WebSocket-Protokoll zu verwalten. Da das WebSocket-Protokoll in den meisten gängigen Browsern nativ unterstützt wird, arbeiten einige direkt mit WS, ohne es zu verwenden socket.io oben drauf. Hier ist ein kurzer Link zu den API-Dokumenten und hier ist ein kurzes Tutorial mit Node .js und express.
sockjs
Bei 6k stars ist sockjs eine Browser-JavaScript-Bibliothek, die ein WebSocket-ähnliches Objekt mit einer browserübergreifenden Javascript-API bereitstellt, die eine domänenübergreifende Kommunikation mit niedriger Latenz, Vollduplex zwischen dem Browser und dem Webserver ermöglicht. Es folgt der HTML5-Websocket-API und greift nur dann auf browserspezifische Protokolle zurück, wenn es fehlschlägt. Sockjs-node ist das Gegenstück zur Client-Bibliothek.
Websocket-Knoten
Dieses Websocket-Tool für Knoten.js hat 2k Sterne und ist eine meist reine JavaScript-Implementierung der WebSocket-Protokollversionen 8 und 13 für Node. WebSocket-Node umfasst sowohl Client- als auch Serverfunktionen, die über WebSocketClient und WebSocketServer verfügbar sind. Sobald eine Verbindung hergestellt ist, ist die API zum Senden und Empfangen von Nachrichten identisch. Hier ist ein kurzes Tutorial zum Erstellen einer einfachen Chat-App, und hier ist eine kurze Präsentation.
socketcluster
SocketCluster ist eine skalierbare HTTP + -Echtzeitserver-Engine, mit der Sie Echtzeitserver mit mehreren Prozessen erstellen können, die alle CPU-Kerne auf einer Maschine / Instanz nutzen. Anstatt den Knoten ausführen zu müssen.js Server als einzelner Thread macht Ihr Backend widerstandsfähiger, indem es sich automatisch von Worker-Abstürzen erholt und Fehler in einem zentralen Protokoll auf jedem Host zusammenfasst. Bei 5k Sternen unterstützt es sowohl die direkte Client-Server-Kommunikation als auch die Gruppenkommunikation über Pub / Sub-Kanäle.
Feathers
Bei nerly 10k stars Feathers ist ein Echtzeit-Microservice-Webframework für NodeJS, mit dem Sie Ihre Daten über RESTful-Ressourcen, Sockets (Plugin) und flexible Plug-Ins steuern können. Das feathersjs / socketio-Modul ermöglicht es, Servicemethoden aufzurufen und Echtzeitereignisse zu empfangenüber Socket.io bei der Arbeit mit Knoten.js. Hier ist ein kurzes Tutorial zum Erstellen einer einfachen Chat-Anwendung.
faye-websocket-node
Etwas alt und „nur“ 500 Sterne, ist dieses Projekt ein standardkonformer WebSocket Client und Server. Es bietet Klassen zum Erstellen von WebSocket-Servern und -Clients in Node, jedoch nicht den Server selbst oder eine andere zusätzliche Abstraktion als die Standard-WebSocket-API (abgesehen von EventSource-Verbindungen). Es gibt auch eine Ruby-Implementierung für das Konzept.
websocket wie versprochen
Eine WebSocket-Clientbibliothek, die eine Promise-basierte API zum Verbinden, Trennen und Versenden von Nachrichten mit dem Server bereitstellt. Es ist im Grunde ein einfacher Anfrage-Antwort-Mechanismus, der ein Versprechen zurückgibt. Um mit Knoten zu arbeiten.daher sollte es mit einer Knotenserverbibliothek eines Drittanbieters wie websockets-node kombiniert werden. Obwohl nur bei 200 Sternen, befindet sich das Projekt noch in der aktiven Entwicklung.
Lobende Erwähnungen
Beachten Sie, dass diese Projekte größtenteils nicht gewartet werden.
- nodejs-websocket
- Primus
- Express-ws
- Drücker-js
- Gesamt: