XAUTOCLAIM后重试计数器的访问值

Access value of retry counter after XAUTOCLAIM

我正在使用 Redis 流来构建排队功能。我想防止坏消息堵塞队列,所以我只想尝试N次然后丢弃。

我正在使用模式:

Producer: XADD
Consumer: XAUTOCLAIM or XREADGROUP
Consumer: XACK

消费者首先尝试 XAUTOCLAIM 待处理列表中的旧消息,如果 none 存在,它使用 XREADGROUP 从队列中挑选一条消息。然后 XACK 已处理的消息。

XAUTOCLAIM 的文档提到了“重试计数器”,这听起来非常适合我的用例。但是我不知道如何读取消息的重试计数器。

正如 Itamar Haber 在评论中指出的那样,可以使用 extended form of XPENDING 访问重试计数器。具体来说,响应元组的第四个值是“传递此消息的次数”。