emqtt 试用(二)验证 emq 和 mosquito 的共享订阅

时间:2024-09-01 15:33:08

本地订阅(Local Subscription)

emqtt 试用(二)验证 emq 和 mosquito 的共享订阅

本地订阅(Local Subscription)只在本节点创建订阅与路由表,不会在集群节点间广播全局路由,非常适合物联网数据采集应用。 
使用方式: 订阅者在主题(Topic)前增加'$local/'前缀。

共享订阅(Shared Subscription)

emqtt 试用(二)验证 emq 和 mosquito 的共享订阅

共享订阅(Shared Subscription)支持在多订阅者间采用分组负载平衡方式派发消息:

使用方式: 订阅者在主题(Topic)前增加'$queue'或'$share//'前缀。

一、验证 emqq

1、发布端

mosquitto_pub   -t   topic   -m   'XXXX2'

emqtt 试用(二)验证 emq 和 mosquito 的共享订阅

@echo
     for /L %%i in (1,1,50) do mosquitto_pub -t topic -m 'XXXX%%i'
pause

2、订阅端

mosquitto_sub   -t    $share/group/topic

二、验证 mosquitto

emqtt 试用(二)验证 emq 和 mosquito 的共享订阅

1、发布端

mosquitto_pub   -t    topic  'xxxxxx' (订阅端收不到,说明mosquito不支持共享消费)

mosquitto_pub   -t    $share/group/topic  (这样发订阅端收到,说明mosquito-server把$share/group/当普通字符处理)

2、订阅端

mosquitto_sub   -t    $share/group/topic

三、结论

本次验证 使用 mosquitto_sub 和 mosquitto_pub , mqtt.fx 不支持emq的共享订阅。

1、emq 支持 共享订阅  和 分组共享订阅

共享订阅:发布者发布topic,订阅者订阅 $queue/topic

分组订阅:发布者发布topic,订阅者订阅 $share/group/topic

完全订阅:发布者发布topic,订阅者订阅 topic

2、mosquitto 不支持 共享订阅 和 分组共享订阅

3、rabbitmq  支持消息队列订阅,消息队列可以设置为定向和两种方式。