WebSocket
WebSocket ist ein Standardprotokoll, das einem Web-Browser bzw. einer Clientanwendung ermöglicht, über eine Vollduplexverbindung mit einer Web-Server-Anwendung zu kommunizieren. Das Produkt unterstützt die Spezifikation WebSocket 1.1, die sich auf die Spezifikation 1.0 stützt, und bietet einen stabileren Ansatz zur Angabe von Nachrichtenhandlern.
HTTP wurde nicht für langlebige Vollduplexkommunikation in Echtzeit zwischen zwei Anwendungen konzipiert. In vielen Fällen muss eine Web-Server-Anwendung oder ein Servlet lang über eine Vollduplexverbindung mit einem Client-Browser oder einer Clientanwendung kommunizieren. Die zwei Anwendungen müssen Daten in beide Richtungen frei lesen und schreiben können. Ein Beispiel dafür ist eine Anwendung, die konstant Wechselkurse auf dem Web-Browser eines Aktienhändlers anzeigt. Aktuelle technische Lösungen auf der Basis von HTTP für diese Art der Übertragung sind umständlich und ineffizient. HTTP-Lösungen für konstante wechselseitige Datenübertragung zwischen einem Browser und einem Server sind meist das Polling und/oder zwei offene HTTP-Verbindungen, die Einwegübertragungen ausführen.
WebSocket verwendet eine Standardfolge von HTTP-Anforderungen und -Antworten, um eine Verbindung herzustellen. Wenn die Verbindung eingerichtet ist, stellt die WebSocket-API eine Schreib-/Leseschnittstelle bereit, mit der Daten über die hergestellte Verbindung im Vollduplexverfahren asynchron geschrieben und gelesen werden können. WebSocket stellt auch eine Schnittstelle bereit, mit der die Verbindung von beiden Seiten asynchron geschlossen werden kann.
Da WebSocket eine Standardfolge von HTTP-Anforderungen und -Antworten verwendet, um eine Verbindung herzustellen, erfolgt die Initialisierung der Verbindung über Firewalls und Proxys auf dieselbe Weise wie bei einer HTTP-Verbindung. WebSocket setzt eine Vollduplexübertragung voraus, einschließlich simultaner Schreib-/Lesezugriffe über dieselbe Verbindung. Das Web-Server-Plug-in des Produkts unterstützt zwar die Vollduplexübertragung, doch andere Firewalls und Proxys müssen zur Aktivierung dieser Unterstützung möglicherweise geändert werden. WebSocket kann auch SSL für sichere Verbindungen und Datenübertragungen verwenden. Dieses Protokoll verwendet SSL auf dieselbe Weise wie es auch das HTTP-Protokoll tut.