XGROUP SETID

设置消费组的最后已交付消息 ID。

语法

XGROUP SETID key group [ENTRIESREAD entries-read]

引入版本:5.0.0

复杂度摘要:O(1)

设置消费组最后下发的ID。

通常,消费者组的最后传递ID是在使用XGROUP CREATE创建组时设置的。 XGROUP SETID 命令允许修改组的最后传递的 ID,而无需删除并重新创建组。例如,如果您希望消费者组中的消费者重新处理流中的所有消息,您可能需要将其下一个 ID 设置为 0:

XGROUP SETID mystream mygroup 0

可以指定可选的 entries_read 参数来启用任意 ID 的消费者组滞后跟踪。任意 ID 是不是流的第一个条目、最后一个条目的 ID 或零 (0-0) ID 的任何 ID。当您确切地知道任意 ID(不包括它)和流的最后一个条目之间有多少条目时,这会很有用。在这种情况下,可以将 entries_read 设置为流的 entries_added 减去条目数。

必需参数

key

流键。

group

消费者组名称。

id | $

The ID to set as the group's last-delivered ID. Use $ for the last message currently in the stream, or 0 to reset to the start.

可选参数

ENTRIESREAD entries-read

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

Redis Software 与 Redis Cloud 兼容性

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

返回值

RESP2

简单字符串回复: OK.

RESP3

简单字符串回复: OK.

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