RocketMQ突然No route info of this topic
问题背景
测试环境
RocketMQ一直正常运行,突然出现错误字样无此主题的路由信息
(想把找到伴侣的好消息
带回家,但找不到回家的路)。
No route info of this topic
RocketMQ Message hasn't been sent. Caused by No route info of this topic: xxx
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic: xxx
RocketMQProducerMessageHandler RocketMQProducerMessageHandler.java.200
org.apache.rocketmq.client.exception.MQClientException: No route info of this topic: springCloudBus
See http://rocketmq.apache.org/docs/faq/ for further details.
at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:667)
at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1363)
at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1307)
at org.apache.rocketmq.client.producer.DefaultMQProducer.send(DefaultMQProducer.java:333)
at com.alibaba.cloud.stream.binder.rocketmq.integration.outbound.RocketMQProducerMessageHandler.send(RocketMQProducerMessageHandler.java:227)
at com.alibaba.cloud.stream.binder.rocketmq.integration.outbound.RocketMQProducerMessageHandler.handleMessageInternal(RocketMQProducerMessageHandler.java:184)
at org.springframework.integration.handler.AbstractMessageHandler.handleMessage(AbstractMessageHandler.java:55)
at org.springframework.cloud.stream.binder.AbstractMessageChannelBinder$SendingHandler.handleMessageInternal(AbstractMessageChannelBinder.java:1105)
at org.springframework.integration.handler.AbstractMessageHandler.handleMessage(AbstractMessageHandler.java:55)
at org.springframework.integration.dispatcher.AbstractDispatcher.tryOptimizedDispatch(AbstractDispatcher.java:115)
at org.springframework.integration.dispatcher.UnicastingDispatcher.doDispatch(UnicastingDispatcher.java:133)
at org.springframework.integration.dispatcher.UnicastingDispatcher.dispatch(UnicastingDispatcher.java:106)
at org.springframework.integration.channel.AbstractSubscribableChannel.doSend(AbstractSubscribableChannel.java:72)
at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:317)
at org.springframework.integration.channel.AbstractMessageChannel.send(AbstractMessageChannel.java:272)
at org.springframework.cloud.stream.function.StreamBridge.send(StreamBridge.java:239)
at org.springframework.cloud.stream.function.StreamBridge.send(StreamBridge.java:171)
at org.springframework.cloud.stream.function.StreamBridge.send(StreamBridge.java:151)
at org.springframework.cloud.bus.StreamBusBridge.send(StreamBusBridge.java:36)
at org.springframework.cloud.bus.RemoteApplicationEventListener.onApplicationEvent(RemoteApplicationEventListener.java:46)
at org.springframework.cloud.bus.RemoteApplicationEventListener.onApplicationEvent(RemoteApplicationEventListener.java:26)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:421)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:378)
问题排查
1.检查mqnamesrv
是否启动成功
- 启动成功日志如下
2.检查mqbroker
是否启动成功
- 启动mqbroker成功日志如下
发现问题
- 在
bin
目录下启动时mqbroker
时,并没有打印成功日志,而是停留在当前执行窗口。
- 定位问题:
启动mqbroker失败!!!
解决问题
如果是正式环境,就不要随意删除store目录啦。即使要删除,先备份哦!!!
- 启动
broker
失败,测试环境
直接删除
数据存储store
目录,该目录默认在${user.home}/store
window cmd
查看:输入echo %userprofile%
或echo %USERPROFILE%