首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
redis
zhen_hong
创建于2024-04-09
订阅专栏
redis
暂无订阅
共7篇文章
创建于2024-04-09
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
1、redis的简单动态字符串
1.首先c自带的字符数组在获取其字符串的长度的时间复杂度是O(n),使用SDS的话,应为在存入字符串的时候就已经使用len字段记录了长度,所以其查询复杂度是O(1),另一方面SDS有 free字段用于记录字符数组还未使用的空间,这样的话,它就知道从何处开始可以继续写入字符,这样在...
2、链表
1.1.1.可以看到这个节点有两个指针,一个prev,另一个是next,所以它是一个双向链表。1.1.1.双端:链表节点带有prev和next指针,获取某个节点的前置节点和后置节点的复杂度都是O(1)。无环:表头节点的prev指针和表尾节点的next指针都指向NULL,对链表的访...
3、字典
Redis的字典使用哈希表作为底层实现,一个哈希表里面可以有多个哈希表节点,而每个哈希表节点就保存了字典中的一个键值对。1.1.1.1.1.1.1.1.扩展或收缩哈希表需要将ht[0]里面的所有键值对rehash到ht[1]里面,但是,这个rehash动作并不是一次性、集中式地完...
4、跳跃表
跳跃表(skiplist)是一种有序数据结构,它通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。 跳跃表支持平均O(logN)、最坏O(N)复杂度的节点查找,还可以通过顺序性操作来批量处理节点。 在大部分情况下,跳跃表的效率可以和平衡树相媲美,并且因为跳跃...
5、整数集合
整数集合(intset)是集合键的底层实现之一, 当一个集合只包含整数值元素,并且这个集合的元素数量不多时,Redis就会使用整数集合作为集合键的底层实现。2.2.如果我们添加到整数集合中的元素比以前的整数的长度都要长,那么就需要升级,所有的元素都要升级为最长的那个整数的长度,比...
6、压缩列表
压缩列表(ziplist)是列表键和哈希键的底层实现之一。当一个列表键只包含少量列表项,并且每个列表项要么就是小整数值,要么就是长度比较短的字符串,那么Redis就会使用压缩列表来做列表键的底层实现。如果前一节点的长度小于254字节,那么previous_entry_length...
redis的使用
注:本次的redis测试为单机测试和集群测试,测试运行在windows上,也就是服务器为linux,windows作为客户端,它需要的数据从这个linux取。这与直接用linux做开发不同在于在redis配置上会有些改动,需要注意。1、使用虚拟机安装centos linux操作系...