使用xreadgroup获取指定的id

jqjz2hbq  于 2021-06-10  发布在  Redis
关注(0)|答案(1)|浏览(597)

我想知道是否有一个命令或参数,我可以用它来获取指定recordid的消息。

XREADGROUP GROUP mygroup myconsumer COUNT 1 STREAMS mystream 12345-0

我想要id为12345-0的消息,但似乎我收到了12345-0之后的第一条消息。
我不能使用xrange,因为它不更新deliverycount和lastdeliverytime,而且它似乎不理解消费者群体的概念。
我也知道

XREADGROUP GROUP mygroup myconsumer STREAMS mystream 0

它会给我所有挂起的消息,但这会更新所有消息的deliverycount,我不希望这样。

eyh26e7m

eyh26e7m1#

redis本身并不提供您所要求的功能。所以你可能不得不用
xreadgroup mygroup myconsumer count 1流mystream 12344-99999
而不是“12345-0”
redis stream返回的条目id格式为毫秒时序列号。由于不太可能在一毫秒内插入99999个项目,因此可以确保获得正确的项目。

相关问题