压缩列表是列表键和哈希键的底层实现之一 。当一个列表键只包含少量列表项,并且每个列表项要么就是小整数,要么就是长度比较短的字符串,那么Redis 就会使用压缩列表来做列表键的底层实现 。
一个压缩列表的组成如下:
文章插图
- zlbytes:用于记录整个压缩列表占用的内存字节数
- zltail:记录要列表尾节点距离压缩列表的起始地址有多少字节
- zllen:记录了压缩列表包含的节点数量
- entryX:要说列表包含的各个节点
- zlend:用于标记压缩列表的末端
2、特性
- 压缩列表是一种为了节约内存而开发的顺序型数据结构
- 压缩列表被用作列表键和哈希键的底层实现之一
- 压缩列表可以包含多个节点,每个节点可以保存一个字节数组或者整数值
- 添加新节点到压缩列表,可能会引发连锁更新操作 。
【Redis中五大数据结构的底层实现】
推荐阅读
- Django中间件看完这篇彻底明白
- 在Nginx服务器中设置多个站点
- 中国银行信用卡分期怎么算利息
- 教你如何在 Centos7.7中设置GRUB菜单的密码
- 适合中小型公司的Mysql数据库使用规范
- C++中的运算符重载
- 后台系统中,字段类型与字段设计事项
- 枇杷采摘时间,茉莉花茶中干花越多质量越好吗
- 颈肩和膝盖的运动
- 中盛瓷砖报价是多少