Kürzlich habe ich von Server-Gesendete Ereignisse als eine viel einfachere Alternative zu WebSockets für Push vom Server gefunden. Die meisten Orte, die sie vergleichen (wie here, here und here) sagen, dass, wenn Sie keine Vollduplex-Kommunikation zwischen Client und Server benötigen, WebSockets Overkill und SSE gut genug sind.Nachteil der Verwendung von Server-Sent-Ereignissen für die bidirektionale Client-Server-Kommunikation (anstelle von WebSockets)
Meine Frage ist, was wäre der Nachteil der Verwendung von SSE, wenn Sie bidirektionale Kommunikation (wie ein Chat zum Beispiel) benötigen, regelmäßige ajax Anfragen zum Senden von Nachrichten vom Client und den Server-Stream für den Empfang von ihnen? Wenn man bedenkt, dass ich auf der Server-Seite wenig oder gar keine Konfiguration von SSE machen muss, scheint dies eine viel attraktivere Option zu sein.
Gute Punkte, aber ich bin nicht ganz mit der Komplexität eines eigenständigen Servers einverstanden. SSE-Protokoll ist tot einfach - viel einfacher als WebSockets (kein Handshake, Framing, Maskierung, binär). In beiden Fällen müssen Sie HTTP-ähnliche Header analysieren. Sie können SSE-Server in einem Bash-Skript implementieren :) – Kornel
@porneL, Sie haben Recht, ein einfacher SSE-Server könnte ziemlich einfach zu implementieren sein (obwohl ich Ihre Bash-Version sehen möchte), aber auch ein einfacher WebSocket-Server. Aber egal, mein Punkt war nicht, dass WebSocket-Server einfacher sind, sondern dass SSE normalerweise einen Webserver annimmt, WebSockets dagegen nicht (obwohl es sicherlich so konzipiert ist, dass es leicht in die bestehende Web-Infrastruktur integriert werden kann). – kanaka