有大佬知道 Apache RocketMQ中canal + 阿里云RocketMQ5 的这个报错怎?[阿里云消息队列MQ]

有大佬知道 Apache RocketMQ中canal + 阿里云RocketMQ5 的这个报错怎么处理吗?

Caused by: org.apache.rocketmq.client.exception.MQBrokerException: CODE: 3 DESC: request code unsupported, code 320 BROKER: 39.108.175.57:8080 For more information, please visit the url, http://rocketmq.apache.org/docs/faq/ at org.apache.rocketmq.client.impl.MQClientAPIImpl.processSendResponse(MQClientAPIImpl.java:666) ~[na:na] at org.apache.rocketmq.client.impl.MQClientAPIImpl.sendMessageSync(MQClientAPIImpl.java:505) ~[na:na] at org.apache.rocketmq.client.impl.MQClientAPIImpl.sendMessage(MQClientAPIImpl.java:487) ~[na:na] at org.apache.rocketmq.client.impl.MQClientAPIImpl.sendMessage(MQClientAPIImpl.java:431) ~[na:na] at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendKernelImpl(DefaultMQProducerImpl.java:854) ~[na:na] at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:1004) ~[na:na] at org.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.send(DefaultMQProducerImpl.java:986) ~[na:na] at org.apache.rocketmq.client.producer.DefaultMQProducer.send(DefaultMQProducer.java:911) ~[na:na] at com.alibaba.otter.canal.connector.rocketmq.producer.CanalRocketMQProducer.sendMessage(CanalRocketMQProducer.java:338) ~[na:na]?把canal.mq.flatMessage设为false就解决了

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
1 条回复 A 作者 M 管理员
  1. 根据报错信息来看,这个问题是由于请求码不受支持引起的。具体原因可能是由于版本不兼容或配置错误导致。

    解决此问题的一种方法是将canal.mq.flatMessage设置为false。这个配置项用于指定是否将Canal的数据转换为扁平化的消息格式。通过将其设置为false,可以避免报错。

    另外,还可以检查以下几点:

    1. 确保使用的Apache RocketMQ和阿里云RocketMQ版本是兼容的。检查它们的兼容性矩阵,确保使用的版本是支持的。

    2. 检查RocketMQ的配置文件,确保Broker的地址和端口号正确。

    3. 检查Canal和RocketMQ的配置,确保它们之间的配置正确匹配。

    如果以上方法都无法解决问题,建议查看更详细的日志信息,以便进一步排查问题。

  2. 参考这个文档看看。https://help.aliyun.com/document_detail/476221.html?spm=a2c4g.450842.0.0.5d5f4b0enmYBC4 ,此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”