redis自学(9)List

List

RedisList类型可以从首、尾操作列表中的元素:

 

 

哪一个数据结构能满足上述特征?

  •  LinkedList: 普通链表,可以从双端访问,内存占用较高,内存碎片较多
  •  ZipList: 压缩列表,可以从双端访问,内存占用低,存储上限低
  •  QuickList: LinkedList+ZipList,可以从双端访问,内存占用较低,包含多个ZipList,存储上限高
  •  3.2版本之前,Redis采用ZipListLinkedList来实现List,当元素数量小于512并且元素大小小于64字节时采用ZipList编码,超过则采用LinkedList编码。
  •  3.2版本之后,Redis统一采用QuickList来实现List:

 

 

 

 

内存结构:

 

 

说白了,就是在QuickList的基础上,包了一下RedisObject的头。

 

posted @ 2024-03-01 16:24  蓝海的bug本  阅读(2)  评论(0编辑  收藏  举报