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 访问重试计数器。具体来说,响应元组的第四个值是“传递此消息的次数”。
我正在使用 Redis 流来构建排队功能。我想防止坏消息堵塞队列,所以我只想尝试N次然后丢弃。
我正在使用模式:
Producer: XADD
Consumer: XAUTOCLAIM or XREADGROUP
Consumer: XACK
消费者首先尝试 XAUTOCLAIM 待处理列表中的旧消息,如果 none 存在,它使用 XREADGROUP 从队列中挑选一条消息。然后 XACK 已处理的消息。
XAUTOCLAIM 的文档提到了“重试计数器”,这听起来非常适合我的用例。但是我不知道如何读取消息的重试计数器。
正如 Itamar Haber 在评论中指出的那样,可以使用 extended form of XPENDING 访问重试计数器。具体来说,响应元组的第四个值是“传递此消息的次数”。