关于MQTT传输协议的疑问

一刀 发布于 2014/10/10 17:16
阅读 5K+
收藏 1

对于协议的本质,应该就是定义了一种规范,发送方根据这个规范发送指定格式的数据,接收方接到数据后可以正确的解析出来,提取所需的信息。是这么理解吧。

现在有一个MQTT协议,是物联网的标准协议,专门为低宽带、不可信网络设计的高效传输协议。

一般架构是 Producer ------push------> Broker  <------pull--------Consumer。

生产者给Broker发送MQTT格式的消息,Consumer从Broker中拉取消息。那么问题就来了:中间那个Broker一定要实现MQTT协议么?

那个Broker不就是用来转发消息的么,消息中转站。为什么一定要实现MQTT协议呢?

 

加载中
0
DaemonSu
DaemonSu
必须要实现,比如mqtt中的有个参数 QOS,也就是传输质量。如果服务器端不实现MQTT协议,怎么能够解析到消息中的QOS参数呢,进而又怎么保证传输质量呢。
0
wwwjjj
wwwjjj

mqtt针对低带宽或者不稳定的连接有处理 , 所以一条数据必然是拆分成多块传递的

 我理解是不管在push还是pull过程中,都涉及数据块的拆分和合并,由此broker应该不是简单的转发,所以也必须实现这个协议

0
hantsy
hantsy
MQTT 和物联网没特定关系,,,只是一种消息协议而已,AMQP,STOMP,Websocket 等现在都比较流行。
0
一刀
一刀

引用来自“wwwjjj”的评论

mqtt针对低带宽或者不稳定的连接有处理 , 所以一条数据必然是拆分成多块传递的

 我理解是不管在push还是pull过程中,都涉及数据块的拆分和合并,由此broker应该不是简单的转发,所以也必须实现这个协议

你好,目前有一个需求就是利用手机终端控制职能家电产品。手机和家电之间使用消息中间件通信。消息协议选择了MQTT协议。但是问题是要支持的请求数要达到100万/秒,这个必须要使用集群才行,网上有说使用kafka分布式消息系统来完成。但是问题是kafka并没有实现MQTT协议啊。这个怎么破?而实现了这个协议的消息中间件又基本不支持集群!
DaemonSu
DaemonSu
啥应用啊,要求每秒100w的数据。好像陌陌也没有到这么大的数据两吧
返回顶部
顶部