如图所示,搜索一个topic时出现两个node,而且发到这个主题上的消息有的会因为没有订阅者被drop,请问这个问题是什么导致的,如何解决?谢谢
正常,没人订阅就会drop
去客户端管理那看看
客户端管理页面没办法按照topic搜索,是说一个一个打开客户端详情 看有没有订阅这个topic?
对,只能这样了,不行就可以用测试环境只搞一个号测测看
应该是没有的,这边业务上的设计是一个client订阅一个指定的topic,所以使用这个topic的主题基本是确定的。
想请问下有没有方法能够手动删除这个topic呢?
目前没有。
好像是订阅者离线后emqx_route没有清理,这个是bug吗? 版本是v5.4.1
目前没听说过有这种 bug,可以提供一下相关完整的报错日志么?
或者给出具体的重现步骤
目前是通过现象推到的,也不确定是不是这个问题,大致的产生过程如下:
1.一个core节点和一个replicant节点同时发生故障(k8s环境部署,两个pod是在同一台宿主机上,宿主机故障迁移)
2.core和replicant节点恢复后,出现很多因为没有订阅者而丢弃的消息(故障前没有)
3.抓取丢弃消息,发现订阅者client是在线的,只是存在两个同样的topic出现在不同的node上,但是只有一个订阅(就是一个订阅者,两条路由)
另外,在线客户端大概几十万,消息量几万tps
这个不好重现的话,也没有日志 ,不好跟进。。。
不过新版本确实也优化了 topic 路由,改了核心结构,提速了(自己去 changelog 去看看)。
你可以试试新版本。



