zoukankan      html  css  js  c++  java
  • 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。

    另:
     RocketmqRemoting:95 info INFO: closeChannel: close the connection to remote address[39.107.153.215:9876] result: true 频繁打印这个,是因为jar包的问题
    RocketmqRemoting:95 info INFO: closeChannel: close the connection to remote address[] result: true 频繁打印这个是nameserver地址错误的问题。
    
    
  • 相关阅读:
    数值项目的格式化
    ORACLE ERROR CODE代表的意思
    深入了解 Microsoft AJAX Library
    调用MSScriptContro来运算字符串表达式
    C# 调用带参数EXE文件及带启动参数EXE制作
    将DataTable或Ilist<>转换成JSON格式
    客户端控件调用服务器的参数
    调用ICodeCompiler来计算字符串表达式
    录像工具
    今天是开博客园的第一天
  • 原文地址:https://www.cnblogs.com/bfyq/p/10790359.html
Copyright © 2011-2022 走看看