File tree Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Expand file tree Collapse file tree 1 file changed +25
-0
lines changed Original file line number Diff line number Diff line change @@ -13,6 +13,31 @@ Redis是一个键值对数据库,数据库中的键值对由字典保存。每
1313
1414不同的数据类型的具体实现(压缩列表、跳表必看)请看: https://redisbook.readthedocs.io/en/latest/index.html#id3
1515
16+ 在线文档:http://118.25.23.115/
17+
18+ 压缩链表原理:
19+ 在内存中是连续存储的,但是不同于数组,为了节省内存,ziplist的每个元素所占的内存大小可以不同
20+ ziplist将一些必要的偏移量信息记录在了每一个节点里,使之能跳到上一个节点或下一个节点
21+
22+ 与跳表应用场景:
23+ 当zset满足以下两个条件的时候,使用ziplist:
24+ 1 . 保存的元素少于128个
25+ 2 . 保存的所有元素大小都小于64字节
26+
27+ redis数据过期策略:
28+ 定时过期:每个设置过期时间的key都需要创建一个定时器,到过期时间就会立即清除
29+ 惰性过期:只有当访问一个key时,才会判断该key是否已过期,过期则清除
30+ 定期过期:每隔一定的时间,会扫描一定数量的数据库的expires字典中一定数量的key,并清除其中已过期的key
31+
32+ 内存淘汰策略:
33+ no-eviction:当内存不足以容纳新写入数据时,新写入操作会报错
34+ allkeys-lru:当内存不足以容纳新写入数据时,在键空间中,移除最近最少使用的key
35+ allkeys-random:当内存不足以容纳新写入数据时,在键空间中,随机移除某个key
36+ volatile-lru:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中,移除最近最少使用的key
37+ volatile-random:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中,随机移除某个key
38+ volatile-ttl:当内存不足以容纳新写入数据时,在设置了过期时间的键空间中,有更早过期时间的key优先移除
39+
40+
1641## 集群模式
1742来源:
1843https://my.oschina.net/zhangxufeng/blog/905611
You can’t perform that action at this time.
0 commit comments