环境信息
- EMQX 版本:4.2.8
- 操作系统及版本:red hat 7.9
- 其他
问题描述
emqx4.2.8开源版本无法使用共享订阅模式
使用一个客户端推送主题/test,另外两个客户端使用$queue/test接收主题,结果无法接收数,但不使用共享订阅模式,可以接收到
emqx4.2.8开源版本无法使用共享订阅模式
使用一个客户端推送主题/test,另外两个客户端使用$queue/test接收主题,结果无法接收数,但不使用共享订阅模式,可以接收到
共享订阅 $queue/test
,发布应该用 test
而不是 /test
我如何获取全部主题数据呢使用 “#”,获取不到
使用/test主题推送可以,可以使用/#主题进行全部监听,使用共享订阅模式,使用test主题推送,如何监听全部主题,使用#主题无法获取到
首先,得区分 /
符号是层级分割符,即 主题/#
是有两层的,它只能匹配 /test
而无法匹配 test
。而 #
就可以匹配 emqx 的任意主题,但默认 emqx 的 ACL 规则是禁止非 127.0.0.1
的客户端ip来订阅 #
主题的。实际生产环境中,我们都不推荐 #
主题,来收所有的消息。你一定要有自己的 主题层级设计
其他的你可以先自己尝试下