# 本文框架如下
第一部分,主要是在阅读
代码过程中的日志和笔记;
第二部分,主要介绍了 Re
dis 的主要框架,以及 Re
dis 是如何提供服务的,从
一个最简单的命令开始讲起;
第三部分,主要介绍 Re
dis 底层用作存储的数据结构,这一部分很有趣;
第四部分,主要讲解了 Re
dis 的核心
功能,
包括持久化,
订阅/发布模式,主从复制,事务机制,集群等等;
第五部分,展示了 Re
dis 几个简单的应用;
第六部分,介绍了 Re
dis 和 Memcached 的区别,以及稍稍讲解了 Memcached。
**Tips:本文
内容已经整理成了pdf版本,
内容由真实腾讯专家手写,感兴趣的朋友可以通过【关注+点赞+
评论本文】的方式
获取到腾讯专家手写Re
dis源码日志笔记pdf版本!**

# Re
dis服务框架
**①初探 Re
dis**
* Re
dis 在缓存系统所处的位置

**②Re
dis 事件驱动详解**
* 事件驱动数据结构
* 事件循环中心

* **Re
dis 事件驱动原理**
* 事件
注册详解
* 准备监听工作
* 为监听
套接字
注册事件
* 事件循环
* 事件触发

**③Re
dis 是如何提供服务的**
* initServerCon
fig()
* aeMain()
* 新连接的处理流程
* 请求的处理流程
* 执行命令
* 在哪里
回复客户端

# Re
dis 基础数据结构
**①Re
dis 数据结构综述**
**一览 Re
dis 数据结构:**
* Re
dis 命令和相关的数据结构
* Re
dis 数据结构 re
disOb
* Re
dis 数据结构 sds
* Re
dis 数据结构 dict
* Re
dis 数据结构 ziplist
* Re
dis 数据结构 skiplist
* Re
dis 数据结构 intset

# Re
dis 内功心法
**①Re
dis 数据淘汰机制**
* 概述
* LRU 数据淘汰机制
* TTL 数据淘汰机制
* 在哪里开始淘汰数据

**②RDB 持久化策略**
* 简介 Re
dis 持久化 RDB、AOF
* 数据结构 rio
* RDB 持久化的运作机制
* RDB 数据的组织方式

**③AOF 持久化策略**
* 简介
* AOF 数据组织方式
* AOF 持久化运作机制
* 细说更新缓存
* AOF 恢复过程
* AOF 的适用场景

**④
订阅发布机制**
* 两种
订阅
*
订阅相关数据结构
*
订阅过程
* 消息发布

**⑤主从复制**
* 概述
* 积压空间
* 主从数据同步机制概述
* 全同步
* 部分同步
* 缓存主机
* 总结

**⑥Re
dis 事务机制**
* Re
dis 事务简述
* Re
dis 命令队列
* 键值的监视
* Re
dis 事务的执行与取消
* Re
dis 事务番外篇

**⑦Re
dis 与 Lua 脚本**
* Lua 简介
* Re
dis 为什么
添加 Lua
支持
* Lua 环境的初始化
* Lua 脚本执行 Re
dis 命令
* Re
dis Lua 脚本的执行过程
* 脏命令
* Lua 脚本的传播
* 总结

**⑧Re
dis 哨兵机制**
* Re
dis 哨兵的服务框架
* 定时程序
* 哨兵与 Re
dis 服务器的互联
* HELLO 命令
* INFO 命令
* 心跳
* 在线状态监测
* 故障修复
* Re
dis 监视器
* Re
dis 数据迁移

**⑨Re
dis 集群(上)**
* 前奏
* 谈一致性哈希算法(consistent hashing)
* 怎么实现?
* twemproxy - Re
dis 集群管理方案
* Re
dis 官方版本
支持的集群

**⑩Re
dis 集群(下)**
* 数据结构
* 数据访问
* 新的节点
* 心跳机制
* 故障修复
* 故障修复的协议
* 数据迁移
* 总结

# Re
dis 应用
* Re
dis 应用
* 积分
排行榜
* 分布式锁
* 消息中间件
* Web 服务器存储 session

# 其他
**①内存数据管理**
* 共享对象
* 两种内存分配策略
* memory aware
支持
* zmalloc_get_private_dirty()
函数
* 总结

**②Re
dis 日志和断言**
* Re
dis 日志
* Re
dis 断言

**③Re
dis 与 Memcache**
* 单进程单线程与单进程多线程
* 丰富与简单的数据结构
* 其他
*
性能测试

**④****小剖****Memcache**
* 初始化过程
* UNIX 域
套接字和 UDP/TCP 工作模式
* 工作线程管理和线程调配方式
* 存储容器
* 连接管理
*
一个请求的工作流程
* Memcached 的分布式

**⑤Memcached slab 分配策略**
* Memcached slab 概述
* slab class
* 内存分配的过程
* lru 机制

**⑥源码阅读工具**
* sublime text 2/3
* Eclipse CDT
* Source insight

# 最后
面试是跳槽涨薪最直接有效的方式,马上金九银十来了,各位做好面试造飞机,工作拧螺丝的准备了吗?
掌握了这些知识点,面试时在候选人中又可以夺目不少,暴击9999点。机会都是留给有准备的人,只有充足的准备,才可能让自己可以在候选人中脱颖而出。
如果你需要这份完整版的**面试笔记**,只需你多多**
支持**我这篇
文章。
**——对
文章进行点赞+
评论,关注我,[然后再点击这里免费领取](https://docs.qq.com/doc/DSmxTbFJ1cmN1R2dB)**


版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。