broker的主要职责是接受发布者发布的所有消息,并将其过滤后分发给不同的消息订阅者。
如今有很多的broker,下面就是一张关于各种broker对比的:
目前我用过的有mosquitto和emqttd(20版本后改叫EMQ),因为目前的需求是希望做每秒10万以上的数据接入,所以需要考虑建立集群。但是在使用mosquitto的过程中发现他不支持集群,所以就放弃了,转投emqttd。
在使用mosquitto过程中发现了一些问题:
在使用mosquitto时,如果想使用集群的话,可能会需要进行二次开发。目前只支持桥接。并且他在遍历时的效率非常低,使得他无法支持大量的客户端或者 *** 作过于频繁的 *** 作(比如十万或百万级别的客户端同时发送数据)
emqttd有以下优点:
EMQ 20 (Erlang/Enterprise/Elastic MQTT Broker) 是基于 Erlang/OTP 语言平台开发,支持大规模连接和分布式集群,发布订阅模式的开源 MQTT 消息服务器。(抄自 EMQ官方文档 )
用户在使用CAT1模组MQTT协议对接自己的服务器,有时会遇到设备无法连接服务器问题(比如提示+ECMTCON:0,0,5连接服务器被拒绝,认证失败)。此时可以通过 标准的MQTT服务器 进行对比,因为用户自己的服务器一般加入校验信息,导致模组&MQTT服务器无法连接。
Eclipse Mosquitto是一个开源消息代理,实现了MQTT协议版本31和311,这里使用该服务器进行测试。针对该服务器更详细的介绍也可以参考 >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)