哈希对象的编码可以是ziplist或者hashtable。

ziplist编码的哈希对象使用压缩列表作为底层实现。每当有新的键值对要加入到哈希对象时,程序会先将保存键的节点推入到压缩列表表尾,然后再将保存值的节点推入到压缩列表表尾。
哈希对象
哈希对象
hashtable编码的哈希对象使用字典作为底层实现,

  • 字典的每个键都是一个字符串对象,对象中保存了键值对的键。
  • 字典的每个值都是一个字符串对象,对象中保存了键值对的值。
    哈希对象
    使用ziplist
  • 哈希对象保存的所有键值对的键和值的字符串长度都小于64字节;
  • 哈希对象保存的键值对数量小于512个;

不满足以上要求的使用 hashtable编码

相关文章: