共享订阅收不到消息

环境信息

  • EMQ X 版本:docker 4.3.3
  • 操作系统及版本:K8S(版本V1.19.4)中使用helm部署
  • 其他:3个实例的集群

问题描述

  1. 三个节点运行均正常

  2. 使用mosquitto_client作为客户端,对名为“test”的topic做共享订阅
    a. 窗口A订阅topic为“$share/g/test”


    b. 窗口B同样订阅topic为“$share/g/test”

    c. 窗口C订阅topic为“test”

    从控制台上可以看到订阅关系为

  3. 使用mosquitto_client发布topic为“test”的消息

测试结果:
a. 窗口A和窗口B均收不到这条消息,只有窗口C能够收到;
b. 将窗口C的订阅停掉后,窗口A和窗口B依旧收不到消息;
c. 若将发布的消息的topic改为“/g/test”,则窗口A和窗口B均会收到消息,但窗口C收不到消息。

实在想不出问题出在哪里,还请帮忙指出来,谢谢

配置文件及日志

建议换成 MQTTX 客户端工具试试。

多谢,使用MQTTX验证正常,那我估计可能还是mosquitto client的问题。
使用mosquitto_sub订阅“$share/g/test”后,控制台显示订阅的topic为“/g/test”;
而使用MQTTX订阅“$share/g/test”后,控制台显示订阅的topic为“$share/g/test”,应该是这个导致的,至于根本原因不是很清楚了

1 个赞