STOMP over websockets vs plain STOMP. Which one is better?
从Spring4开始,我们在WebSocket上提供了STOMP(子)协议的支持。我确实了解WebSocket与HTTP相比的好处以及使用
这些是正交的问题。
Websocket是一种交通工具;实际上,当使用sock.js时,您可以使用许多传输作为后备,并且仍然使用STOMP。
STOMP描述了客户端和服务器之间交换的消息格式。
这就像要求比较TCP和HTTP。
您不能"仅使用" STOMP与服务器或消息代理进行通信。您必须使用传输方式发送那些STOMP消息。
STOMP不会处理websocket握手,实际上,它根本不了解它。举例来说,您可以在HTTP之上透明地使用STOMP,并且从STOMPangular看没什么不同。
- 关于您的观点1)按照链接rabbitmq.com/protocols.html,似乎我们可以使用web-stomp(通过http),但是提到的默认STOMP / MQTT / AMQP不使用HTTP。我不确定在没有基础HTTP的情况下握手如何发生,但必须进行调查
-
但是在" 26.4.14 STOMP Client "的Spring文档中,其中写道,有一个基于WebSocket的STOMP和一个基于TCP客户端的STOMP。因此,以我的理解,WebSocket已经建立在TCP上,因此基于TCP的STOMP使得WebSocket层介于两者之间吗?那么不遗漏WebSocket层的好处在哪里呢?编辑:我想从服务器到服务器进行通信(因此不涉及浏览器)