![](https://img-blog.csdnimg.cn/20190327110741715.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Redis
Redis底层学习
好马行千里
这个作者很懒,什么都没留下…
展开
-
4.Redis基础数据结构之SkipList
SkipList是一个高效的查询插入数据结构 skiplist 有序数据结构 查找平均O(logN),最坏O(N).效率大部分情况下和平衡二叉树媲美.并且实现简单. 使用场景: sortedSet 集群节点中作为内部数据结构 ...原创 2019-03-26 21:24:06 · 89 阅读 · 0 评论 -
3.Redis基础数据结构之Map
Map是较为常见的数据类型原创 2019-03-26 21:23:31 · 488 阅读 · 1 评论 -
2.Redis基础数据结构之链表
链表也是很重要的数据类型 链表的特性,高效的节点重排,顺序性的节点访问,灵活增删节点 链表的使用场景: List的value. 发布与订阅. 慢查询. 监视器等. Redis服务端采用链表保存客户端状态信息 用链表来构建客户端输出缓冲区. Redis的链表为普通的双向无环链表 head tail len dup->复制链表节点所保存的值 free->释放链表节点...原创 2019-03-26 21:23:02 · 158 阅读 · 0 评论 -
1.Redis基础数据结构之字符串
String类型是比较基本的类型 String做了改进->动态字符串 KVPair均是SDS对象 列表内部的字符串也是SDS对象 此外SDS还被用作buffer,AOF中的AOF缓冲区,客户端状态中的输入缓冲区. SDS结构: len,字符串的长度 free,闲置空间长度 buf[],字符串本身. 优点 O(1)复杂度获取长度 因为记录长度避免了拼接String缓冲区溢出 减少...原创 2019-03-26 21:22:20 · 93 阅读 · 0 评论 -
Redis的线程模型
Redis为什么这么快? 很大原因上是因为Redis是一个事件驱动的服务端 Redis是一个事件驱动程序,服务器需要处理两类事件: 文件事件:Reactor模式,file event handler,使用IO多路复用同时监听多个socket请求,然后分发给不同的事件处理器 监听的accept,read,write,close操作都对应的文件事件就会...原创 2019-03-26 17:27:58 · 152 阅读 · 0 评论 -
Redis的持久化方式
Redis主要有两种持久化方式: RDB持久化 AOF持久化 下面简要描述下:原创 2019-03-26 17:24:59 · 80 阅读 · 0 评论 -
Redis多机数据库实现
多机实现主要是以下三个策略: 复制 哨兵 集群原创 2019-03-26 17:23:30 · 172 阅读 · 0 评论