Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【已解决】RocketMQ在发送消息的时候,提示:MQClientException: No route info of this topic

【已解决】RocketMQ在发送消息的时候,提示:MQClientException: No route info of this topic

作者头像
凯哥Java
发布于 2022-12-16 10:57:27
发布于 2022-12-16 10:57:27
4.3K00
代码可运行
举报
文章被收录于专栏:凯哥Java凯哥Java
运行总次数:0
代码可运行

RocketMQ在发送消息的时候,提示:MQClientException: No route info of this topic xxx

错误提示是说,没有xxx这个topic.

出现topic不存在,主要有以下三种情况导致的:

第一种:broker中真的没有xxx这个topic.

可能原因:Broker模块不支持自动创建topic,并且xxxtopic也没有被手动创建多

第二种:borker模块没有正确连接到NAMESRV

第三种:发送者没有连接到NAMESRV

知道了产生原因,我们就来解决办法:

第一种情况查看topic是否正的存在。可以登录rockermq控制台查看:

可以搜索topic。

或者查看broker的日志确定topic是否真的存在。

登录MQ所在的服务器机器上,执行如下命令(注意:把recommend换成你自己的topic名称)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cat ~/logs/rocketmqlogs/broker.log  | grep topicName=recommend

出现如下内容说明topic已经存在:

如果没有出现以上内容,说明topic确实不存在。可以通过自动创建topic或者手动创建topic解决问题。

自动创建topic:可以在启动broker启动脚本添加自动创建topic参数。或者在启动时候指定broker.conf配置文件中添加:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
autoCreateTopicEnable=true

表示自动创建topic.

或者手动创建topic。

手动创建topic的话,可以直接在控制台创建。凯哥就不演示了。

第二种情况出现的概率极低。可以采用以下两种方式确认

1. 查看broker的日志,出现如下内容,说明连接成功。

查看日志命令 cat ~/logs/rocketmqlogs/broker.log | grep register

2. 在mq的安装目录执行如下命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mqadmin clusterList -n localhost:9876

出现如下内容说明连接成功,没有问题

第三种情况出现的最大可能是发送者和mq服务器之间的网络或端口不通,可以使用ping或者telnet确定问题。如果ping或者telnet连接不通,需要联系运维工程师开通网络或端口权限

凯哥遇到的是第一种情况,topic确实不存在,是通过手动创建topic解决的

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-10-19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
解决RocketMQ报No route info of this topic:异常
目前rocketmq 被使用的概率大大提升,相信很多朋友也都想着去试试,在测试的过程中根据官网给出的案例,应该有部分朋友遇到过这个异常: No route info of this topic,然后上网查询结果,我相信大部分人看到的结果都是让我们在启动mqbroker的时候需要指定autoCreateTopicEnable=true
一缕82年的清风
2021/12/06
5.1K1
记在使用rocketmq client客户端过程中踩到的坑
最近项目中使用阿里的rocketmq来做消息队列,具体怎么使用rocketmq不在本文讨论范围之内,其相关帮助文档可以参考如下链接
lyb-geek
2018/12/29
15.2K1
Rocketmq之No route info of this topic解决思路
用过rocketmq的人,采用客户端调用的时候,可能会相对高频的出现的 No route info of this topic这个异常问题,然后你可能会拿着这个问题,直接谷歌百度一把,会发现网上告诉你的答案,可能会有如下几种
lyb-geek
2019/06/18
50.1K1
Rocketmq之No route info of this topic解决思路
排查1:Broker 禁止自动创建 Topic,且用户没有通过手工方式创建 Topic
一:Topic不存在,即没有创建出来次Topic(我们项目均为手动创建),或者Broker模块不支持自动创建topic。
翎野君
2023/05/12
2K0
快速学习-RocketMQ运维管理
这种方式风险较大,一旦Broker重启或者宕机时,会导致整个服务不可用。不建议线上环境使用,可以用于本地测试。
cwl_java
2020/09/21
4.1K0
RocketMQ入门案例【面试+工作】
RocketMQ入门案例【面试+工作】 0 RocketMQ简介 0.1 介绍 RocketMQ是一个消息中间件。消息中间件中有两个角色:消息生产者和消息消费者。RocketMQ里同样有这两个概念,消息生产者负责创建消息并发送到RocketMQ服务器,RocketMQ服务器会将消息持久化到磁盘,消息消费者从RocketMQ服务器拉取消息并提交给应用消费。 0.2 特点 RocketMQ是一款分布式、队列模型的消息中间件,具有以下特点: 支持严格的消息顺序 支持Topic与Queue两种模式 亿级消息堆积能
Java帮帮
2018/06/05
2.1K0
Apache RocketMQ 消息队列部署与可视化界面安装
Apache RocketMQ是一个分布式、队列模型的消息中间件,具有低延迟、高性能和高可靠、万亿级容量和灵活的可扩展性。核心组件由四部分组成:Name Servers,Brokers,Producer 和 Consumer;它们中的每一个都可以水平扩展,而没有单一的故障节点。
陶陶技术笔记
2020/06/02
3.3K0
Apache RocketMQ 消息队列部署与可视化界面安装
RocketMQ(一):基本概念和环境搭建
下载地址:https://rocketmq.apache.org/dowloading/releases/
冬天vs不冷
2025/01/21
1620
RocketMQ(一):基本概念和环境搭建
云原生中间件RocketMQ(三)RocketMQ集群(多Master和多Master-Slave方式)部署实操
RocketMQ为我们提供了丰富的集群架构模型,包括单点模式、主从模式、双主模式以及生产上使用最多的双主双从模式(或者说多主多从模式)。更多细节可以查看我之前的文章:云原生中间件RocketMQ(二)源码包结构和集群架构模型。本文主要讲双主模式和多主多从模式的部署。
共饮一杯无
2022/11/28
7840
Centos6下RocketMQ集群部署记录
一、RocketMQ基础知识介绍 Apache RocketMQ是阿里开源的一款高性能、高吞吐量、队列模型的消息中间件的分布式消息中间件。RocketMQ具有以下特点: 上图是一个典型的消息中间件收发
洗尽了浮华
2018/06/14
2.3K0
K8S生产环境下的RocketMQ集群(双主双从+同步模式) - 完整部署笔记
RocketMQ主要有四大组成部分:NameServer、Broker、Producer、Consumer。
洗尽了浮华
2021/02/05
9K0
K8S生产环境下的RocketMQ集群(双主双从+同步模式) - 完整部署笔记
深度解析RocketMQ Topic的创建机制
我还记得第一次使用rocketmq的时候,需要去控制台预先创建topic,我当时就想为什么要这么设计,于是我决定撸一波源码,带大家从根源上吃透rocketmq topic的创建机制。
张乘辉
2019/06/14
4K0
RocketMQ双主双从模式集群部署
在生产环境中为了保障集群无单点故障问题,保证高可用性,需要采用双主双从模式来构建RocketMQ集群。双主双从模式部署需要四台机器,两台机器分别部署Broker-Master & NameServer,另外两台机器分别部署Broker-Slave & NameServer。
端碗吹水
2020/12/03
2.5K0
RocketMQ双主双从模式集群部署
RocketMQ深入浅出-03-集群搭建
这种部署方式风险较大,一旦Broker重启或者宕机时,会导致整个服务不可用,影响Producer和Consumer的使用。一般用于本地测试,线上环境不推荐使用。
编程大道
2021/10/28
1.1K1
RocketMQ深入浅出-03-集群搭建
Rocketmq--消息驱动
MQ(Message Queue)是一种跨进程的通信机制,用于传递消息。通俗点说,就是一个先进先出的数
IT小马哥
2021/06/03
7100
Rocketmq--消息驱动
搭了一个RocketMQ高可用集群,同事直呼哇塞!
RocketMQ作为阿里系的一款开源的MQ中间件,经历了双十一的高并发场景的消息流转,能够处理万亿级别的消息。
码猿技术专栏
2023/05/01
8920
搭了一个RocketMQ高可用集群,同事直呼哇塞!
【分布式事务】基于RocketMQ搭建生产级消息集群?
目前很多互联网公司的系统都在朝着微服务化、分布式化系统的方向在演进,这带来了很多好处,也带来了一些棘手的问题,其中最棘手的莫过于数据一致性问题了。早期我们的软件功能都在一个进程中,数据的一致性可以通过数据库本地事务来加以控制。而在分布式架构下,原本比较完整的本地功能可能被拆分成了多个独立的服务进程。与之前相比,同样一笔业务订单此时可能会经历很多服务模块的处理,调用链路会变得很长,例如某电商平台,一笔购物订单可能会经过:商品中心、订单、支付、物流等多个服务的调用,而这可能还只是比较粗粒度的划分,某些比较大型的服务,如支付系统,可能本身又会按照分布式的架构拆分成多个微服务,所以整个业务的调用链路会变得更加冗长。 而这不可避免的就会产生数据不一致的问题,为了实现业务上的最终一致性,功能比较独立的系统,如订单系统与支付系统就会通过额外的业务逻辑设计来确保彼此之间的最终一致性,如订单系统会通过订单的支付状态来保持与支付系统的数据一致,而支付系统则会提供支付状态查询接口,或者实现最大可能的主动回调功能,来确保二者数据状态的最终一致。此外可能还会通过日终的订单对账来发现不一致的数据,并进行数据校正。 但是这些都只是业务逻辑上的手段,对于某些内部服务之间的调用,如果可以通过分布式事务解决方案来加以保证的话,其实是可以大大减少一些不必要的复杂业务逻辑的。实际上,目前市面上能够提供分布式事务解决方案、又比较成熟的开源技术框架比较少,而RocketMQ在4.3.0之后的版本提供了事务消息的功能,因为RocketMQ本身拥有比较多的生产实践的关系,所以这一功能备受关注,作者所在的公司也有一些实践。 以此为契机,为了给大家关于分布式事务一个比较清晰的认识,这里我打算以RocketMQ的事务消息功能为示例,来相对全面的总结下分布式事务的内容。本篇文章的主要内容,是先介绍如何搭建一套生产级的RocketMQ消息集群,以此准备下试验环境。在下一篇《【分布式事务】基于RocketMQ的分布式事务实现》会整体介绍下分布式事务的概念和原理,并做一些代码级的试验。
用户5927304
2019/07/31
7960
芋道 RocketMQ 安装部署
RocketMQ 是阿里巴巴在 2012 年开源的分布式消息中间件,目前已经捐赠给 Apache 软件基金会,并于 2017 年 9 月 25 日成为 Apache 的顶级项目。作为经历过多次阿里巴巴双十一这种“超级工程”的洗礼并有稳定出色表现的国产中间件,以其高性能、低延时和高可靠等特性近年来已经也被越来越多的国内企业使用。
芋道源码
2020/05/19
1.4K0
芋道 RocketMQ 安装部署
【RocketMq-生产者】消息发送者参数详解
首先注意本次讨论的RokcetMq源码版本为 4.9.4,距离5.0发布 的没有多久。
阿东
2022/11/26
1.3K0
【RocketMq-生产者】消息发送者参数详解
RocketMQ的集群
刚才的演示中,我们已经体验到了RocketMQ是如何工作的。这样,我们回头看RocketMQ的集群架构,就能够有更全面的理解了。
Java廖志伟
2022/03/07
7570
RocketMQ的集群
推荐阅读
相关推荐
解决RocketMQ报No route info of this topic:异常
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验