Redis 列表对象

2019-02-05  本文已影响4人  杰哥长得帅

列表对象的编码可以是 ziplist 或 linkedlist

ziplist 编码的列表对象使用压缩列表作为底层实现,每个压缩列表节点(entry)保存了一个列表元素,节点值可以是一个字节数组或者整数,而不是 SDS(参考压缩列表的 content 属性)

ziplist 编码的列表对象

linkedlist 编码的列表对象使用双端链表作为底层实现,每个双端链表节点(node)都保存一个字符串对象,而每个字符串对象都保存了一个列表元素

linkedlist 编码的列表对象

编码转换

当列表对象可以同时满足以下两个条件时,列表对象使用 ziplist 编码:

以上两个条件的上限值可以被修改,由 list-max-ziplist-value 和 list-max-ziplist-entris 选项控制

当任一条件不能被满足时,对象的编码转换操作就会被执行

上一篇下一篇

猜你喜欢

热点阅读