RocketMQ5.0服务端版本,当消费端消息消费失败,consumerSendMsgBack会返回错误信息:look message by offset failed to check the topic name,导致客户端重试消息必须走sendMessageBackAsNormalMessage方法,这个只有升级到5.1才能解决问题吗?如果大量消息消费失败,会严重影响客户端的性能。
RocketMQ只有升级到5.1才能解决问题吗?如果大量消息消费失败,会严重影响客户端的性能。[阿里云消息队列MQ]
「点点赞赏,手留余香」
还没有人赞赏,快来当第一个赞赏的人吧!
问题的根本原因是 RocketMQ 5.0 版本中的一个已知 bug,导致
consumerSendMsgBack
方法返回错误信息:“look message by offset failed to check the topic name”。这个问题在 RocketMQ 5.1 版本中得到了修复。如果你使用的是 RocketMQ 5.0 版本,并且遇到了该问题,建议考虑以下解决方案:
升级到 RocketMQ 5.1 版本:升级到最新版本可以解决该问题。RocketMQ 5.1 版本修复了许多问题和 bug,并提供了更好的性能和稳定性。
使用
sendMessageBackAsNormalMessage
方法进行消息重试:如果无法立即升级到 5.1 版本,你可以使用sendMessageBackAsNormalMessage
方法来手动将消费失败的消息重新发送到 Broker 进行重试。尽管这可能对客户端性能有一定影响,但仍然是一个可行的临时解决方案。根据提供的信息,如果你在使用RocketMQ 5.0版本的服务端,并且当消费端消息消费失败时,consumerSendMsgBack会返回错误信息:look message by offset failed to check the topic name,可能会导致客户端重试消息必须走sendMessageBackAsNormalMessage方法,可能是因为以下原因之一:
此回答整理自钉群“群2-Apache RocketMQ 中国开发者钉钉群”