Group表示一类Producer或Consumer,这类Producer或Consumer通常生产或消费同一类消息,且消息发布或订阅的逻辑一致。使用云消息队列 RocketMQ 版进行消息收发,您需要创建Group ID用于标识同一类生产者实例或者同一类消费者实例。本文介绍如何在云消息队列 RocketMQ 版控制台上创建、删除和查询Group。
使用限制
-
Group ID不能跨实例使用。例如,在实例A中创建的Group ID无法在实例B中使用。
-
消费者必须有对应的Group ID,生产者不作强制要求。
-
RocketMQ 不支持自动创建 Group ID,必须通过控制台或 API 手动创建。
-
RocketMQ 5.x 实例仅支持集群消费(Clustering)模式,不支持直接设置广播消费(Broadcasting)模式。如需实现广播效果,需为每个消费者节点创建独立的 Consumer Group 来模拟。
-
同一队列中的消息可由不同 Consumer Group 并行消费,各 Consumer Group 相互独立、互不影响,不存在消费竞争或相互限制。
创建Group
登录云消息队列 RocketMQ 版控制台,在左侧导航栏单击实例列表。
在顶部菜单栏选择地域,如华东1(杭州),然后在实例列表中,单击目标实例名称。
-
在左侧导航栏,单击Group 管理。
-
在Group 管理页面,单击创建 Group。
-
在创建 Group面板中根据页面提示完成配置后,单击确定。
配置项包括:Group ID(必填,最多 60 字符)、投递顺序性(可选并发投递或顺序投递,并发模式下消息无顺序依赖)、描述(最多 128 字符)。展开重试和死信规则区域可配置消费重试策略(默认为阶梯退避)、最大重试次数(默认 16 次)以及保存死信消息开关(关闭时超过最大重试次数的消息将被丢弃)。
查看Group列表
登录云消息队列 RocketMQ 版控制台,在左侧导航栏单击实例列表。
在顶部菜单栏选择地域,如华东1(杭州),然后在实例列表中,单击目标实例名称。
-
在左侧导航栏,单击Group 管理。
-
在Group 管理页面,可以查看当前实例的所有Group。
查询Group详情
-
在Group 管理页面,找到目标Group,在其操作列单击详情。
-
在Group 详情页面,可以查询Group的详细信息。
查询Group运行信息
-
在Group 管理页面,找到目标Group,在其操作列单击详情。
-
在Group 详情页面,单击运行信息页签。
编辑Group
-
在Group 管理页面,找到目标Group,在其操作列单击详情。
-
在Group 详情页面,单击基本信息页签,然后在基础信息区域单击编辑。
-
在更新 Group面板中根据页面提示完成配置后,单击确定。
配置项包括:Group ID(长度 1~60 个字符)、投递顺序性(可选 并发投递 或 顺序投递,并发模式下消息无顺序依赖)、描述(最多 128 字符)。展开 重试和死信规则 可设置 消费重试策略(如阶梯退避)、最大重试次数(默认 16 次)及 保存死信消息 开关。若关闭保存死信消息,超过最大重试次数后消息将被丢弃。
删除Group
删除Group ID后,由该Group ID标识的消费者实例将立即停止接收消息,Group的相关资源也同时被删除且不可恢复,请您谨慎执行该操作。
-
在Group 管理页面,找到目标Group,在其操作列单击详情。
-
在Group 详情页面,单击基本信息页签,然后在基础信息区域单击删除 Group。
-
在提示对话框,单击确认。
重置消费位点
-
Group 管理页面,找到目标Group,在其操作列单击详情。
-
在Group 详情页面,单击基本信息页签,然后在基础信息区域单击重置消费位点。
-
在重置消费位点面板中,选择需要重置的目标Topic和重置方式,然后单击确定。
警告若选择从最新位点开始消费,则Group ID在指定Topic中的堆积消息将被全部清除,该操作大概2~3分钟后生效,请勿重复操作。期间应用所有的消费者将暂停消费2~3分钟,对延迟敏感的业务请谨慎使用。
-
从最新位点开始消费:若选择此项,该Group ID在消费指定Topic下的消息时会跳过当前堆积(未被消费)的所有消息,从最新消息开始消费。
-
从指定时间点的位点开始消费:选择此项后会出现时间选择控件。请指定一个时间点,消费者将从这个时间点之后发送的消息开始消费,不管之前的消息是否又被消费过。
-
-
在弹出的提示对话框,确认提示信息,然后单击确定。
查看仪表盘
仪表盘主要展示实例的生产者概览信息、计费相关指标以及限流相关指标。仪表盘指标详情,请参见仪表盘。
-
在Group 管理页面,找到目标Group,在其操作列单击详情。
-
在Group 详情页面,单击仪表盘页签。
更多操作
Group导入和导出,请参见Group导入/导出。
常见问题
为什么控制台 Group 列表或导入 Group 后消费模式显示为"-"?
消费模式(MessageModel)由消费者客户端 SDK 在代码中指定,而非通过控制台界面配置。控制台中的消费模式数据需在客户端实例启动并成功连接到服务端后才能同步显示。
使用导入 Group功能时,导入操作不携带消费模式字段,因此导入后消费模式显示"-"属于正常现象。"-"表示当前尚未获取到该 Group 的消费模式信息,而非表示已配置为广播消费模式(实际默认为集群消费)。排查建议:
-
检查消费者 SDK 代码是否正确设置了 MessageModel 参数。
-
等待消费者客户端启动并成功连接后刷新页面,或尝试强制刷新(Ctrl+F5)。
-
通过 Topic 详情页确认实际消费数据。
如何暂停或停止特定消息的推送?
当前控制台和 API 均不支持直接暂停或停止特定单条消息的推送。可参考以下替代方案:
-
方案一:在消费者代码中临时跳过特定消息——针对目标 Message ID,在消费逻辑中直接返回消费成功,使框架跳过该消息,避免触发重试机制。
-
方案二:更换 Consumer Group——为受影响的消费逻辑创建新的 Consumer Group,从新的消费位点开始消费,可规避持续重试问题。
确认合法 Group 返回 CODE 25 (subscription not latest) 是否与鉴权失败有关?
该错误码通常与鉴权失败无直接关联。CODE 25 (subscription not latest) 表示订阅关系版本不一致,常见于以下场景:
可能原因:直接使用开源 RocketMQ Client 而非 ONS Client 接入时,客户端的 subscription version 与服务端期望版本不一致,或 Rebalance 触发后订阅关系未能及时更新,从而触发此错误。
建议:参照官方文档提供的标准示例代码,优先使用 ONS Client 接入,修改接入方式后进行测试验证以定位问题。
相关文档
Group的相关操作也可以通过调用API完成: