当前位置:首页 > 缓存 > 正文内容

redis中压缩列表ziplist的使用

phpmianshi4年前 (2017-05-21)缓存175
压缩列表
压缩列表 ziplist 是为 Redis 节约内存而开发的,是列表键和字典键的底层实现之一。
当元素个数较少时,Redis 用 ziplist 来存储数据,当元素个数超过某个值时,链表键中会把 ziplist 转化为 linkedlist,字典键中会把 ziplist 转化为 hashtable。

ziplist 是由一系列特殊编码的连续内存块组成的顺序型的数据结构,ziplist 中可以包含多个 entry 节点,每个节点可以存放整数或者字符串。

图片.png

由于内存是连续分配的,所以遍历速度很快。


版权声明:本文由PHP面试资料网发布,如需转载请注明出处。
分享给朋友:

相关文章

redis中字典的底层实现

redis中字典的底层实现

哈希表概述       表现为:存储位置 = f(key);    &...

redis中zset有序集合的底层实现

redis中zset有序集合的底层实现

跳跃表Zset 是一个有序的链表结构,其底层的数据结构是跳跃表 skiplist,其结构如下:typedef struct zskiplistNode ...

redis中字符串的底层实现-SDS

redis中字符串的底层实现-SDS

概述Redis 是用 C 语言开发完成的,但在 Redis 字符串中,并没有使用 C 语言中的字符串,而是用一种称为 S...

redis超时时间和连接数查询与设置

redis客户端连接数redis通过监听一个TCP端口或socket的方式接收来自客户端的连接, 当与客户端建立连接后,redis内部会进行如下操作: (1)客户端socket会被设置为非阻塞模式...

Redis Hyperloglog实现UV数据统计

Redis  自2.8.9起可用时间复杂度: O(1)添加每个元素。HyperLogLog 是一种概率数据结构,用来估算数据的基数。数据集可以是网站访客的 IP 地址,E-mail 邮箱或者...

Redis和memache缓存的区别

1.数据类型Redis数据类型丰富,支持set list hash等类型memcache支持简单数据类型,需要客户端自己处理复杂对象2.持久性redis支持数据落地持久化存储,并不是所有的数据都一直存...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。