关于Rocketmq报错: No route info of this topic

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Rocketmq报错: No route info of this topic相关的知识,希望对你有一定的参考价值。

参考技术A 本人最近从rocketmq4.7.0升级到 rocketmq4.7.1,采用两台机器部署双master双slaver,但是在启动broker的时候发现无法启动,卡在那里不动了;

找了很多资料有的说是 autoCreateTopicEnable=true 的问题,有的说是 防火墙的问题,有的说是生产者无法连上rocketmq 的问题;

这些我都试过了,发现都不行;

最后我的解决办法如下:

删除/root/store 和 /root/logs目录,再重启broker就可以了,简单吧?

NND, 耗费了我大半天的时间!!!

rocketMQ No route info of this topic 错误

最近在使用rocketmq 发送消息,出现了No route info of this topic 异常,但奇怪的是我的其它的服务都可以成功发送,唯有crs服务不能成功发送,在网上搜索的解决方式基本上都是:

ocketmq运行时提示 No route info of this topic 异常产生的原因可能是

①Broker禁止自动创建Topic,且用户没有通过手工方式创建Topic

②Broker没有正确连接到Name Server
③Producer没有正确连接到Name Server 

这三种,我的貌似哪一种都不是因为我的其它服务可以成功发送,于是手动调试代码,发现了一个隐藏的错误,我的服务却没有打印出来:

send request to <ip:9876> failed

java.lang.NoSuchMethodError: io.netty.channel.ChannelPromise.unvoid()Lio/netty/channel/ChannelPromise;

这个是在producer 在 调用

updateTopicRouteInfoFromNameServer 的时候报的错。
原来rocketmq会使用netty作为底层的链接。那为什么我的rocketmq会找不到方法呢?我的版本也是对的。难道是我引用了别的netty把rockentmq的给替换掉了吗?仔细检查了pom,果然如此

技术图片

 

我真的引用了netty-all这个依赖,我怎么会引用这个依赖呢???决心去掉它尝试看看能不能发送成功,果然成功了。真的是它的原因。。。所以,有时候问题不一定就是你想的那样,还得像大神说的那样多跟踪源码才可以呀。
对了,我使用的rocketmq的版本是:4.3.2。

以上是关于关于Rocketmq报错: No route info of this topic的主要内容,如果未能解决你的问题,请参考以下文章

org.apache.rocketmq.client.exception.MQClientException: No route info of this topic

微服务:MQClientException: No route info of this topic, mytopic 报错解决

rocketMQ No route info of this topic 错误

org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, TopicTest异常解决(示

No route info of this topic

SpringBoot集成RocketMQ报错:Bad annotation definition in @ExtRocketMQTemplateConfiguration...