Zset-内部编码
-
有序集合
- 不允许有重复的成员member
- 额外添加了分数score用作排序,分数可以重复
-
使用场景
- zadd记录用户视频的点赞数,并用zincrby不断自增更新
- 用zrevrangebyrank可以快速取出前n名
- 用zscore可以快速查询某个用户视频的点赞数
- zadd记录用户视频的点赞数,并用zincrby不断自增更新
-
源代码文件:t_zset.c
-
可选编码类型
- ziplist —— OBJ_ENCODING_ZIPLIST
- 压缩链表,少于128个元素、且元素均小于64字节时采用
- 512 是 zset-max-ziplist-entries 的默认值
- 64 是 zset-max-ziplist-value 的默认值
- 压缩链表,少于128个元素、且元素均小于64字节时采用
- skiplist —— OBJ_ENCODING_SKIPLIST
- 跳表
- ziplist —— OBJ_ENCODING_ZIPLIST
-
对应底层实现文件:分别在
ziplist.c和server.h