0

使用 redis 流,我可以按时间顺序读取多个流。每个流从一个时间点一直读取到该流中的最新点。我可以在多个流中获取最旧的项目

XREAD COUNT 1 STREAMS streamA streamB streamC 0-0 0-0 0-0

并从那里(注意返回的 id)继续消费选择流中的所有项目。将消费限制为每个流仅 1 个项目。

我怎样才能轻松地反向消耗多个流。从流中提示的最新项目开始并及时倒退,同时将每个流中的消费限制为仅 1 个项目?

4

1 回答 1

0

你不能,因为 Redis 从 6.0 版开始不提供这个 XREVREAD 命令。

最接近的是XREVRANGE,除了它一次只需要一个流。如果你真的想要,你可能需要编写一个 lua 脚本,这样你就可以提供多个流,让脚本循环流并调用 XREVRANGE 命令,然后立即生成结果。

于 2020-07-14T17:32:49.790 回答