1.课前导读
├──01 _ 带你快速攻略Redis源码的整体架构
├──开篇词 _ 阅读Redis源码能给你带来什么?
10.问题答疑
├──答疑1 _ 第1~6讲课后思考题答案及常见问题答疑
├──答疑2 _ 第7~12讲课后思考题答案及常见问题答疑
├──答疑3 _ 第13~18讲课后思考题答案及常见问题答疑
├──答疑4 _ 第19~24讲课后思考题答案及常见问题答疑
├──答疑5 _ 第25~32讲课后思考题答案及常见问题答疑
11.结束语
├──结束语 _ Redis源码阅读,让我们从新开始
2.数据结构模块
├──02 _ 键值对中字符串的实现,用char_还是结构体?
├──03 _ 如何实现一个性能优异的Hash表?
├──04 _ 内存友好的数据结构该如何细化设计?
├──05 _ 有序集合为何能同时支持点查询和范围查询?
├──06 _ 从ziplist到quicklist,再到listpack的启发
├──07 _ 为什么Stream使用了Radix Tree?
3.事件驱动框架和执行模型模块
├──08 _ Redis server启动后会做哪些操作?
├──09 _ Redis事件驱动框架(上):何时使用select、poll、epoll?
├──10 _ Redis事件驱动框架(中):Redis实现了Reactor模型吗?
├──11 _ Redis事件驱动框架(下):Redis有哪些事件?
├──12 _ Redis真的是单线程吗?
├──13 _ Redis 6.0多IO线程的效率提高了吗?
├──14 _ 从代码实现看分布式锁的原子性保证
4.缓存模块
├──15 _ 为什么LRU算法原理和代码实现不一样?
├──16 _ LFU算法和其他算法相比有优势吗?
├──17 _ Lazy Free会影响缓存替换吗?
5.期中测试
├──期中测试 _ 这些Redis源码知识,你都掌握了吗?
├──期中测试题答案 _ 这些问题你都答对了吗?
6.可靠性保证模块
├──18 _ 如何生成和解读RDB文件?
├──19 _ AOF重写(上):触发时机与重写的影响
├──20 _ AOF重写(下):重写时的新写操作记录在哪里?
├──21 _ 主从复制:基于状态机的设计与实现
├──22 _ 哨兵也和Redis实例一样初始化吗?
├──23 _ 从哨兵Leader选举学习Raft协议实现(上)
├──24 _ 从哨兵Leader选举学习Raft协议实现(下)
├──Sub在主从故障切换时是如何发挥作用的?
7.不定期加餐
├──加餐1 _ Redis性能测试工具的使用
├──加餐2 _ 用户Kaito:我是怎么读Redis源码的?
├──加餐3 _ 从Redis到其他键值数据库的学习体会
├──加餐4 _ RDB和AOF文件损坏了咋办?
├──用户故事 _ 曾轼麟:世上无难事,只怕有心人
8.Redis Cluster模块
├──26 _ 从Ping-Pong消息学习Gossip协议的实现
├──27 _ 从MOVED、ASK看集群节点如何处理命令?
├──28 _ Redis Cluster数据迁移会阻塞吗?
8.RedisCluster模块
9.编程技巧模块
├──29 _ 如何正确实现循环缓冲区?
├──30 _ 如何在系统中实现延迟监控?
├──31 _ 从Module的实现学习动态扩展功能
├──32 _ 如何在一个系统中实现单元测试?
JK-Redis源码剖析与实战
资源下载
下载价格35 软妹币
学生教育优惠(永久会员)免费升级学生教育优惠(永久会员)
立即购买
请先
!