RocketMQ报错No route info of this topic解决方案

org.apache.rocketmq.client.exception.MQClientException: No route info of this topic, TopicTest
See http://rocketmq.apache.org/docs/faq/ for further details.
	at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:610)
	at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1223)
	at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1173)
	at org.apache.rocketmq.client.producer.DefaultMQProducer.send(DefaultMQProducer.java:214)
	at com.ProducerTest01.main(ProducerTest01.java:46)

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

官方文档中启动 Broker是这样的:

nohup sh bin/mqbroker -n localhost:9876 &

其实我们可以改成这样:

nohup sh bin/mqbroker -n localhost:9876 autoCreateTopicEnable=true

红字意思(允许自动创建Topic,且允许通过手工方式创建Topic)

客户端的 Producer 没有正确连接到Name Server 

        //Instantiate with a producer group name.
        DefaultMQProducer producer = DefaultMQProducer("traffic_group");
        // Specify name server addresses.
        producer.setNamesrvAddr("localhost:9876");

检查producer的地址是否正确

缺少 Fastjson  的jar包

(由于本次使用的老项目环境,并没有整合maven一起使用,是每个每个jar的慢慢找的,所以才会导致这个缺包的问题)

添加 Fastjson jar包后成功

SendResult [sendStatus=SEND_OK, msgId=C0A803B13AE074A14FED747604D20000, offsetMsgId=C0A820ED00002A9F000000000002BEB2, messageQueue=MessageQueue [topic=TopicTest, brokerName=localhost.localdomain, queueId=0], queueOffset=250]
SendResult [sendStatus=SEND_OK, msgId=C0A803B13AE074A14FED7476050B0001, offsetMsgId=C0A820ED00002A9F000000000002BF64, messageQueue=MessageQueue [topic=TopicTest, brokerName=localhost.localdomain, queueId=1], queueOffset=250]
SendResult [sendStatus=SEND_OK, msgId=C0A803B13AE074A14FED747605120002, offsetMsgId=C0A820ED00002A9F000000000002C016, messageQueue=MessageQueue [topic=TopicTest, brokerName=localhost.localdomain, queueId=2], queueOffset=250]

 

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值