WebSockets
STOMP
STOMP即Simple (or Streaming) Text Orientated Messaging Protocol,简单(流)文本定向消息协议,它提供了一个可互操作的连接格式,允许STOMP客户端与任意STOMP消息代理(Broker)进行交互。STOMP协议为许多公司都提供了基于STOMP的服务器与客户端。
STOMP定义了客户端和服务器之间以Frame进行同行,Frame的格式为:
COMMAND例如:
header1:value1
header2:value2
Body^@

COMMAND分为CONNECT、SEND、SUBSCRIBE、UNSUBSCRIBE、BEGIN、COMMIT、ABORT、ACK、NACK、DISCONNECT这几种。
COMMAND之后下一行紧跟着的是头部的键值对,之后加入一条空行,空行之后为body,即传递的消息实体。
WebSockets与STOMP的区别:
websockets基于tcp,是一种数据传输协议,而stomp是一种文本协议,有点类似tcp与http协议的关系,tcp可以传输二进制文件,tcp不会涉及传输的内容是什么,而是按照自己的协议打包传输数据,有点类似于现在的运输物流,而http是利用tcp这个传输工具创立的一套超文本传输协议,他对请求应答设置了文本规则,比较get post方法,http status状态码设定,类似于快递邮寄。
所以websockets与stomp的区别也可以是物流运输与快递的区别,快递是建立在物流运输的基础上,当然stomp协议可以建立在非websocket上,比如tcp、udp等。
网友回复
DLNA与UPnP的区别和不同?
苏超自建抢票app,通过先预约再抽签化解高并发抢票?
python如何让给电脑在局域网中伪装成电视接收手机的投屏图片视频播放?
如何结合python+js如何自己的视频编码与加密播放直播?
python如何在电脑上通过局域网将本地视频或m3u8视频投屏电视播放?
腾讯视频爱奇艺优酷vip电影电视剧视频如何通过python绕过vip收费直接观看?
有没有可免费观看全球电视台直播m3u8地址url的合集?
有没有实现观影自由的免vip影视苹果 CMS V10 API的可用url?
python如何实时检测电脑usb插入检测报警?
如何判断真人操作的鼠标移动直线轨迹与机器操作的轨迹?