版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/FX_SKY/article/details/79880802
最近某天突然收到报警邮件,线上某个应用发送MQ消息报错,完整异常栈如下:
2018-04-08 18:17:44.126 | DubboServerHandler-10.141.6.116:20968-thread-172 | ERROR | com.xxx.node.application.mq.MqMessageProcessor | 发送MQ消息keys: 26 异常
com.alibaba.rocketmq.client.exception.MQClientException: No route info of this topic, order
See http://docs.aliyun.com/cn#/pub/ons/faq/exceptions&topic_not_existfor further details.
at com.alibaba.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:586)
at com.alibaba.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1034)
at com.alibaba.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1028)
at com.alibaba.rocketmq.client.producer.DefaultMQProducer.send(DefaultMQProducer.java:101)
去RocketMQ上控制台上查看该 topic是存在的,而且另外一个应用发送MQ是正常的,说明我们的RocketMQ集群是正常的。
然后我们比较了最近两次上线war包,发现少了fastjson依赖,rocketmq-client又依赖fastjson,感觉可能是这块出问题了。
于是 加上fastjson依赖:
<!--fastjson-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
重新部署,世界又恢复平静了。