使用redis streams,我可以按时间顺序向前读取多个流。每个流都从一个时间点读取到该流中的最新点。我可以从多个流中得到最老的项目
xread count 1流streama streamb streamc 0-0 0-0
并从那里(注意返回的id)向前移动,消费流选择中的所有项。限制消费到每个流只有一个项目。
如何轻松地反向使用多个流。从一个流的提示上的最新项目开始,并在时间上后退,同时限制每个流中只有一个项目的消费?
使用redis streams,我可以按时间顺序向前读取多个流。每个流都从一个时间点读取到该流中的最新点。我可以从多个流中得到最老的项目
xread count 1流streama streamb streamc 0-0 0-0
并从那里(注意返回的id)向前移动,消费流选择中的所有项。限制消费到每个流只有一个项目。
如何轻松地反向使用多个流。从一个流的提示上的最新项目开始,并在时间上后退,同时限制每个流中只有一个项目的消费?
1条答案
按热度按时间tf7tbtn21#
你不能,因为redis从6.0版开始就不提供这个xrevread命令。
最接近的是xrevrange,除了它一次只需要一个流。如果您真的想这样做,您可能需要编写一个lua脚本,这样您就可以提供多个流,让脚本循环流并调用xrevrange命令,然后立即生成结果。