XACK
返回流的消费者组成员成功确认的消息数。
语法
XACK key group id [id ...]
引入版本:5.0.0
复杂度摘要:O(1)
XACK 命令从流消费者组的 待处理条目列表 (PEL) 中删除一条或多条消息。当消息被传递给某个消费者时(通常是调用 XREADGROUP 的副作用),或者当消费者获得调用 XCLAIM 的消息的所有权时,消息处于待处理状态,因此存储在 PEL 内。待处理的消息已传递给某个消费者,但服务器尚未确定它至少被处理过一次。因此,对 XREADGROUP 的新调用以获取消费者的消息历史记录(例如使用 ID 0),将返回此类消息。同样,待处理的消息将由检查 PEL 的 XPENDING 命令列出。
一旦消费者 成功 处理了一条消息,它就应该调用 XACK,这样该消息就不会被再次处理,并且作为副作用,有关该消息的 PEL 条目也会被清除,从而从 Redis 服务器释放内存。
必需参数
key
流键。
group
消费者组名称。
id [id ...]
一个或多个要确认的消息 ID。
示例
redis> XACK mystream mygroup 1526569495631-0
(integer) 1
Redis Software 与 Redis Cloud 兼容性
| Redis 软件 |
Redis Cloud |
说明 |
|---|---|---|
| ✅ 标准 |
✅ 标准 |
返回值
RESP2
整数回复:该命令返回成功确认的消息数。某些消息 ID 可能不再是 PEL 的一部分(例如,因为它们已经被确认),并且 XACK 不会将它们计为已成功确认。
RESP3
整数回复:该命令返回成功确认的消息数。某些消息 ID 可能不再是 PEL 的一部分(例如,因为它们已经被确认),并且 XACK 不会将它们计为已成功确认。
资料来源:Redis 官方 XACK 文档;中文内容参考 Redis 文档许可。