2017-06-28 1 views
0

Ich bin sehr neu in all dem, aber von meinem Verständnis her, WebSockets ermöglichen eine bidirektionale Übertragung von Informationen zwischen Browsern. Vert.x ist eine Bibliothek, die asynchrone E/A ermöglicht. Und SockJS ist eine JavaScript-Bibliothek, die versucht, Websockets für die Kommunikation zu verwenden, und bietet ansonsten Fallback-Optionen.Wie ist die Beziehung zwischen vert.x, sockJS und websockets?

Aber wenn ich mit vert.x etwas in Java schreibe, verstehe ich nicht ganz, wie die Teile zusammenpassen. Unterstützt vert.x tatsächlich Websockets? Oder brauche ich eine Kombination aus vert.x und sockJS, um das zu ermöglichen?

+0

Haben Sie die Dokumentation gelesen? Es enthält Informationen zum Arbeiten mit WebSockets und SockS: http://vertx.io/docs/vertx-core/java/ und http://vert.io/docs/vertx-web/java/ – berserkk

Antwort

1

HTTP (s) ist ein zustandsloses Protokoll, das bedeutet, dass es nach Beendigung des Jobs inaktiv ist, bis der nächste Job ausgeführt wird.

Nehmen wir als Beispiel eine Chat-Anwendung, nehmen wir an, dass A über HTTP-Protokoll mit B chattet. B hat eine Nachricht gesendet, die sich im Server befindet. Jetzt, bis A den Browser aktualisiert, wird die Nachricht von B nicht angezeigt. Das ist staatenloses Verhalten.

Kommen zu Sockets, die nicht zustandslos ist. Sockets verwenden das ws-Protokoll, das immer mit dem Server verbunden ist. Nehmen wir das gleiche Beispiel: Wenn B eine Nachricht sendet, wird der Socket von A abgerufen und im Browser angezeigt, ohne dass eine Aktualisierung erforderlich ist. So funktionieren Sockets.

Um eine Webseite zu bedienen, benötigen Sie einen http-Server. Ähnlich wie Sockets zu verwenden, wird Sockets Server benötigt. Welche wird von Vert.x zur Verfügung gestellt? Wenn Vert.x den Socket-Server startet, hört Ihr Browser diesen Server mit der clientside sock.js-Datei.

Verwandte Themen