- 主题:MQTT和ZMQ的本质区别是啥?
以前只用过ZMQ,
和ZMQ相比,MQTT的优势和劣势是什么?
哪位来指导一下?
--
FROM 221.231.167.*
也就是说ZMQ更相一个私有协议,而MQTT是一个可以和第三方等外部设备交互的公有应用层协议?
如果设备和服务端的程序都是自己团队开发的,是不是也可以用ZMQ呢?
我看ZMQ也支持订阅发布等一些比较复杂的场景。
【 在 ilylx 的大作中提到: 】
: 使用场景不一样
: zmq类似socket协议,多种模式,适合用来在自己开发的程序之间做数据通信。
: mqtt常用在物联网设备上,设备与服务端通信用。
: ...................
--
FROM 180.110.160.*
其实ZMQ的PUB/SUB,也支持中间加一个消息代理(XPUB/XSUB),这样和MQTT其实模样差不多了。。。
虽然本质上,一个是消息库,一个是应用层协议,但是实际用起来,没有太大的区别。。。
【 在 ilylx 的大作中提到: 】
: 设备端环境支持zmq,程序都自己开发的话,可以用zmq,省的搭一个mqtt服务端。
:
: 设备(mqtt pub)=>mqtt server(emq) => mqtt client(sub)(自己开发)
: ...................
--
FROM 180.110.160.*
发布订阅模式存在负载均衡一说吗?
按理说,所有订阅者都会收到订阅主题消息的。
ZMQ的负载均衡应该是指的ROUTER-DEALER模式,类似生产者-消费者的模型。
消费者按照简单的轮询方式,负载均衡的,也就是说请求消息发出后,消息代理会负载均衡接收链路。
【 在 chunhui 的大作中提到: 】
: mqtt专门针对物联网环境设计的协议。按理,应该更适合一些,比如消息大小,资源占用什么的。
: 想问一下,xpub xsub它可以负载均衡么?如果大量的连接情况下。
:
--
FROM 180.110.160.*
将消息代理拆分为多个子代理?
其实ZMQ的套接字就像积木,可以按照基本规则搭建成很复杂的系统。。。
这更多是架构设计的问题。
【 在 chunhui 的大作中提到: 】
: 如果有多个发布,他们都集中通过proxy发给订阅者。消息一多,这个proxy不是亚历山大?这种情况一般用什么办法处理?
--
FROM 180.110.160.*
对,我现在的理解是,
zmq仅仅是对TCP/UDP/共享内存等通信接口的封装,亮点是,不同类型zmq socket可以构建出各种各样的通信架构。类比乐高积木。
而mqtt是一个应用层协议,类比一个已经组装好的玩具。
如果mqtt基本能满足要求,可以用mqtt,如果希望扩展性较好,想夹带些自己的私货,还是zmq较好。
话说回来,我还是不知道该选哪个。。。
【 在 Chear 的大作中提到: 】
: 虽然是一个层次的东西,但zmq或nng相对更底层,提供了很多基础范式,可以构建出mqtt相同的功能。从可扩展性来说,zmq和nng远超mqtt
--
FROM 180.110.160.*