Redis - zset的应用场景

夹胡碰
0.0922021.01.03 21:34:39字数 182阅读 1,123

因为Rediszset底层的数据结构是skipList,最底层链表有序,所有可以有以下使用场景:

1. 延时队列

score作为时间戳,自动按照时间最近的进行排序,启一个线程持续poll并设置park时间,完成延迟队列的设计,可参考Executors.newScheduledThreadPool中的DelayedWorkQueue

2. 排行榜

score作为浏览次数,自动进行排序,但要注意冷数据。

3. 滑动窗口限流

score作为时间戳,可统计最近一段时间内内的成员数量,实现滑动窗口限流