XGROUP CREATE

创建消费者组。

语法

XGROUP CREATE key group [MKSTREAM] [ENTRIESREAD entries-read]

引入版本:5.0.0

复杂度摘要:O(1)

为存储在key的流创建一个由groupname唯一标识的新消费者组

每个组在给定流中都有唯一的名称。当同名消费者组已存在时,该命令返回 -BUSYGROUP 错误。

该命令的 id 参数指定从新组的角度来看流中最后传送的条目。特殊 ID $ 是流中最后一个条目的 ID,但您可以用任何有效 ID 替换它。

例如,如果您希望该组的消费者从头开始获取整个流,请使用零作为消费者组的起始 ID:

XGROUP CREATE mystream mygroup 0

默认情况下,XGROUP CREATE 命令期望目标流存在,如果不存在则返回错误。如果流不存在,您可以使用可选的 MKSTREAM 子命令作为 id 之后的最后一个参数来自动创建长度为 0 的流:

XGROUP CREATE mystream mygroup $ MKSTREAM

要启用使用者组滞后跟踪,请指定具有任意 ID 的可选 entries_read 命名参数。任意 ID 是不是流的第一个条目、最后一个条目或零(“0-0”)ID 的 ID 的任何 ID。使用它可以找出任意 ID(不包括它)和流的最后一个条目之间有多少个条目。将 entries_read 设置为流的 entries_added 减去条目数。

必需参数

key

流键。

group

要创建的消费者组的名称。

id | $

The ID of the last delivered message the group starts reading after. Use $ for the last message currently in the stream, or 0 to read from the start.

可选参数

MKSTREAM

如果该流尚不存在,则将其创建为空流。

ENTRIESREAD entries-read

设置组的初始条目读取计数器,用于计算其滞后。

Redis Software 与 Redis Cloud 兼容性

Redis
软件
Redis
Cloud
说明
✅ 标准
✅ 主动-主动
✅ 标准
✅ 主动-主动

返回值

RESP2

简单字符串回复: OK.

RESP3

简单字符串回复: OK.

资料来源:Redis 官方 XGROUP CREATE 文档;中文内容参考 Redis 文档许可。