栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

redis知识总结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

redis知识总结

1.数据类型:字符串、哈希、列表、set、zset、geo、hypeloglog、bitmap

2.底层数据结构:dict,dictEntry,redsObject,sds

3.内存淘汰策略:一种是根据所有key进行淘汰(volatile),一种是根据过期时间进行淘汰(allkeys),最后一种是默认(noeviction),内存不足以容纳新写入数据时,新写入操作会报错,

volatile的策略又分lru、random(随机)、ttl(根据过期时间进行淘汰,越早过期的优先被淘汰),而allkeys则是lru,random

4.应用场景缓存、排行榜、计数器应用、共享Session、分布式锁、社交网络、消息队列、位操作

5.Redis提供了RDB和AOF两种持久化机制,RDB手动触发分为异步(save)和同步(bgsave),AOF存储客户端的操作指令,当aof文件过大时,会进行重写,在主从同步时,发送的是RDB文件,因为RDB文件是二进制文件,网络传输效率相对AOF文件较好,而且加载时,相对较快

6.redis高可用分为主从、哨兵和集群(Cluster),集群采用Hash Slot插槽算法,整个数据库被分为16384个slot(槽),每个进入Redis的键值对,根据key进行散列,分配到这16384插槽中的一个

7.字符串内部编码有3种,int(8字节长整型)、embstr(小于等于39字节字符串)、raw(大于39个字节字符串),如果存储数字的话,是用int类型的编码;如果存储非数字,小于等于39字节的字符串,是embstr;大于39个字节,则是raw编码

8.哈希内部编码:ziplist、hashtable,哈希类型元素个数小于512个,所有值小于64字节的话,使用ziplist编码,否则使用hashtable编码。

9.list内部编码:ziplist、linkedlist,如果列表的元素个数小于512个,列表每个元素的值都小于64字节(默认),使用ziplist编码,否则使用linkedlist编码

10.set内部编码:intset、hashtable,如果集合中的元素都是整数且元素个数小于512个,使用intset编码,否则使用hashtable编码

11.zset内部编码:ziplist、skplist(跳表),当有序集合的元素个数小于128个,每个元素的值小于64字节时,使用ziplist编码,否则使用skiplist(跳跃表)编码

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/310598.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号