帮你快速理解、总结文档立即下载
文档中心>消息队列 RocketMQ 版>实践教程>客户端风险说明和更新指南

客户端风险说明和更新指南

最近更新时间:2026-08-12 16:10:30
我的收藏

Java 的 PushConsumer 顺序消息在特定场景下无法保证顺序

客户端列表
5.0.6及以下版本在一些特殊场景下可能会遇到这个问题,在一些网络异常、超时等的场景下,无法保证消息顺序,相关问题:PushConsumer reentrant pop orderly doesn't work as expected
升级客户端操作指南
建议升级到5.0.7,直接升级依赖版本即可。

golang 版本低,路由表可能被清空

客户端列表
v5.0.1及以下在一些网络超时的场景下,由于获取不到路由表,进行了路由表清空,相关问题:golang: optimize the logic of obtaining routing tasks
升级客户端操作指南
建议升级到 v5.1.1-rc1,直接升级依赖版本即可。

Java 消息轨迹可能不完整

客户端列表
4.9.4及以下在一些特殊场景下可能会遇到。
升级客户端操作指南
建议升级到4.9.5,直接升级依赖版本即可。

Go SDK 首次启动可能报错 fetch offset of mq from broker error

客户端列表
master 分支之下都可能遇到,比如 v2.1.2 及以下,启动报错 fetch offset of mq from broker error,相关问题:fetch offset of mq from broker error
升级客户端操作指南
建议升级到最新的 master branch 作为 Commit ID 版本即可。

Java SDK 消费过程中出现报错 the queue's messages, span too long, so do flow control

客户端列表
4.7.1及以下在一些特殊场景下可能会遇到,在消费过程中,日志中打印如上日志,并且消费会被限流,相关问题:the queue's messages, span too long, so do flow control
升级客户端操作指南
建议升级到4.9.5,直接升级依赖版本即可。

Java SDK(rocketmq-remoting)存在远程命令执行漏洞 CVE-2023-33246

客户端列表
4.8.3 及以下版本的 rocketmq-remoting 组件存在 CVE-2023-33246 漏洞,攻击者可通过 NameServer 或 Broker 触发远程命令执行(RCE)。同时该版本依赖的 Netty 组件也需要升级。
升级客户端操作指南
建议升级到 4.8.7 及以上版本,直接升级依赖版本即可。相关问题:CVE-2023-33246

Java SDK(rocketmq-clients gRPC)存在 ack 确认异常

客户端列表
v5.0.8 及以下版本在特定场景下可能出现 ack 确认失败的 Bug(已通过 GitHub Issue 确认),可能导致消息重复消费。
升级客户端操作指南
建议升级到 5.0.7 及以上版本(5.0.7 已修复该 Bug),直接升级依赖版本即可。相关问题:ack bug in rocketmq-clients

Go SDK(rocketmq-client-go)存在 goroutine 泄漏与消息解析异常

客户端列表
v2.1.0 及以下版本存在 goroutine 泄漏问题(issue #4694),以及消息批量发送时解析失败(issue #4697)和 ack 确认失败(issue #4690)等问题。
升级客户端操作指南
建议升级到 v2.1.1 及以上版本,直接升级依赖版本即可。相关问题详见 apache/rocketmq-client-go 仓库。

Python SDK(rocketmq-client-python)gRPC 版本过低导致兼容性问题

客户端列表
5.0.6 版本的 rocketmq-client-python 依赖的 gRPC 版本(2.51.0)存在兼容性问题。建议使用 Python 3.10 及以上版本运行。
升级客户端操作指南
建议升级到 5.1.1 版本,该版本修复了 gRPC 依赖问题。相关说明详见 apache/rocketmq-client-python 仓库。

各语言客户端 SDK 版本状态一览

以下为各语言 RocketMQ 客户端 SDK 的当前版本、推荐版本及风险状态汇总:
语言
SDK 组件
当前在用版本
推荐版本
状态说明
Java
rocketmq-remoting(4.x 协议)
4.8.3
4.8.7+
存在 CVE-2023-33246,建议升级
Java
rocketmq-clients gRPC(5.x)
5.0.8
5.2.1
5.0.7 已修复 ack Bug,建议跟进最新 5.2.x
Go
rocketmq-client-go(remoting)
5.1.2
5.1.4
v5.1.0 为 feature-complete 稳定版,支持 PushConsumer、SimpleConsumer、事务消息
Go
rocketmq-clients Go gRPC
master
2.0.0
4.x 集群不能直接接入 Go SDK,建议使用 2.0.0
Python
rocketmq-client-python
5.0.6
5.1.1
修复 gRPC 依赖问题,推荐 Python 3.10+
C/C++
rocketmq-client-cpp(remoting)
master
2.2.0
2.1.0 引入 Windows 实时编译路径
C/C++
rocketmq-client-cpp(gRPC)
master
5.0.4
C++ gRPC 正式版代码迭代中,尚未完全提交
C#
rocketmq-clients C# gRPC
5.2.1
5.2.1
5.0.0 即为完整正式版,支持 Producer + PushConsumer + SimpleConsumer,要求 .NET 6+
C#
rocketmq-client-csharp(remoting)
master
5.2.1
已发布正式包,支持 .NET 6+
Node.js
rocketmq-clients Node gRPC
1.0.1
1.0.7
1.0.0(2024-11-22)首个正式版发布,要求 Node.js ≥ 18.0,推荐 ≥ 18.17.0 (LTS)
Node.js
rocketmq-client-node(remoting)
master
仅 2019 年版本,未正式发布,不建议生产使用
Rust
rocketmq-clients Rust gRPC
master
轻量 SDK 规划中,当前未发布 release,不建议生产使用
Rust
rocketmq-remoting(remoting)
master
Producer + SimpleConsumer 功能已具备,但无正式版本
PHP
rocketmq-clients PHP gRPC
master
不推荐使用,无正式版,master 分支长期未更新

暂未正式发布的客户端 SDK 说明

以下语言的 RocketMQ 客户端 SDK 暂未发布正式版本或未达到生产可用状态,不建议在新业务中接入:
Node.js(remoting 协议):仓库 rocketmq-client-node 仅在 2019 年发布过一个版本,后续无活跃维护。如有 Node.js 接入需求,建议使用 gRPC 协议的 rocketmq-clients Node 版本(当前推荐 1.0.7)。
Rustrocketmq-clients Rust gRPC 和 remoting 协议均处于 master 分支开发状态,尚未发布正式 release,预计在后续版本规划中。
PHProcketmq-clients/tree/php 分支的 gRPC 客户端长期未更新,无正式版本,不建议生产环境使用。