Was ist der Unterschied zwischen WebSocket- und STOMP-Protokollen?

8

Was sind die Hauptunterschiede zwischen WebSocket- und STOMP-Protokollen?

    
LancerSung 06.12.2016, 04:49
quelle

2 Antworten

14
  

Diese Frage ähnelt der Frage nach dem Unterschied zwischen TCP und HTTP. Ich werde immer noch versuchen, Ihre Frage zu beantworten, es ist natürlich, zwischen diesen beiden Begriffen zu verwechseln, wenn Sie anfangen.

Kurze Antwort

STOMP wird über WebSockets abgeleitet. STOMP erwähnt nur einige spezifische Möglichkeiten, wie die Telegramme zwischen dem Client und dem Server über WebSockets ausgetauscht werden.

Lange Antwort

WebSockets

Es ist eine Spezifikation für die synchrone bidirektionale Kommunikation zwischen einem Client und einem Server. Ähnlich wie TCP-Sockets handelt es sich um ein Protokoll, das als aktualisierte HTTP-Verbindung arbeitet und Frames variabler Länge zwischen den beiden Parteien anstelle eines Streams austauscht.

STOMP

Definiert ein Protokoll für Clients und Server, um mit der Nachrichtensemantik zu kommunizieren. Es definiert keine Implementierungsdetails, sondern adressiert ein einfach zu implementierendes Drahtprotokoll für Messaging-Integrationen. Es bietet eine höhere Semantik als das WebSockets-Protokoll und definiert eine Handvoll von Rahmentypen, die WebSockets-Frames zugeordnet sind. Einige dieser Typen sind ...

  • verbinden
  • abonnieren
  • Abmelden
  • send (Nachrichten an den Server gesendet)
  • Nachricht (für vom Server gesendete Nachrichten) BEGIN, COMMIT, ROLLBACK (Transaktionsverwaltung)
Nitin Kamate 22.12.2016 14:50
quelle
1

Mit der WebSocket-API können Webanwendungen bidirektionale Kommunikationen verarbeiten, während STOMP ein einfaches textorientiertes Nachrichtenprotokoll ist.

Das STOMP-Protokoll wird häufig in einem Web-Socket verwendet, wenn eine Web-App die bidirektionale Kommunikation mit einem Webserver unterstützen muss.

Ein gutes Tutorial ist STOMP Over WebSocket von Jeff Mesnill (2012)

STOMP kann auch ohne einen Websocket, z.B. über eine Telnet-Verbindung oder einen Nachrichtenvermittlungsdienst.

Und Raw WebSockets können ohne STOMP verwendet werden - zB. Spring Boot + WebSocket Beispiel ohne STOMP und SockJs .

    
intotecho 22.01.2018 00:22
quelle

Tags und Links