Redis 源码剖析与实战
深入源码底层实现,轻松通关 Redis 面试
蒋德钧  中科院计算所副研究员
专栏
已完结·共 47 讲
|
1.8w 人已学
|
收藏

你将获得

  • 从源码角度理解 Redis 系统设计思路
  • 经典 C 语言的开发技巧
  • 掌握计算机系统设计思想
  • Redis 高频面试题目解析

课程介绍

说实话,平常我们在基于 Redis 做应用开发的时候,可能只是把它作为一个缓存系统或是数据库来存取数据,并不会接触到源码层面的东西。

但实际上,我们在使用或运维 Redis 的时候,经常会面临 Redis 性能变差、Redis 实例故障等会影响到业务应用运行的问题。再者,经历过大厂面试的人也知道,很多互联网公司在招聘资深技术岗时,都会问一些跟 Redis 相关的考点问题。

这些问题怎么解决、怎么回答,其实考验的就是我们对 Redis 底层源码的掌握程度。但是,阅读源码,你可能觉得想想都是一件很难的事情:我是想读 Redis 源码,但是总感觉无从下手,或者是无所适从,结果最后就不了了之了。

其实,你之所以“无从下手”的原因,是缺少了代码结构的全景图;而出现“无所适从”的问题,是缺少阅读目标的牵引和基本原理的支撑。简单来说,就是你没有掌握科学、高效的代码阅读方法。

所以在这门课程中,蒋德钧老师就会分享他实际阅读 Redis 源码总结出来的经验和方法,帮助你先从整体上掌握 Redis 源码的结构,也就是形成一幅 Redis 源码全景图。

然后,蒋老师会带你细分 Redis 的各大功能特性,梳理出 Redis 功能模块的主线逻辑,让你有目标、更高效地阅读和学习代码,进一步掌握 Redis 不同功能特性的设计与实现思路。并且在阅读代码的过程中,还会带你体会和掌握关键源码对应的计算机系统设计思想,从而你也可以把这些设计思想应用到自己的系统开发中。

课程模块设计

课程主体划分为以下 6 大模块。

  • 数据结构:你会学习到 Redis 主要数据结构的设计思想和实现,包括字符串的实现方法、内存紧凑型结构的设计、哈希表性能优化设计,以及 ziplist、quicklist、listpack、跳表的设计与实现等。
  • 网络通信与执行模型:你会掌握 Redis server 的启动流程、高性能网络通信设计与实现、事件驱动框架的设计与实现、Redis 线程类型的设计和优化等。
  • 缓存:你会了解常见的缓存替换算法是如何从原理转变为代码的,从而更深刻地理解 Redis 实现缓存算法的设计思路。
  • 可靠性保证:你会掌握 RDB、AOF 的具体实现,分布式系统中 Raft 一致性协议的设计实现,以及故障切换的关键代码实现等代码设计思路。
  • 切片集群:你会学习到 Redis 切片集群中关键机制的设计与实现,包括 Gossip 通信协议、请求重定向、数据迁移等,并帮你搞懂面试中关于构建提升 Redis 使用可扩展性的解题思路。
  • 编程技巧:你会学习和掌握 Redis 源码中使用的一些编程技巧,并可以应用到自己的程序开发中。

课程中如果没有特殊说明,老师介绍的源码都是基于 Redis 5.0.8 版本的。

课程目录

查看更多
免费试读

特别放送

免费领取福利

订阅须知

  1. 订阅成功后,推荐通过“极客时间”App 端、Web 端学习。
  2. 本专栏为虚拟商品,交付形式为图文 + 音频,一经订阅,概不退款。
  3. 订阅后分享海报,每邀一位好友订阅有现金返现。
  4. 戳此先充值再购课更划算,还有最新课表、超值赠品福利等。
  5. 企业采购推荐使用“极客时间企业版”便捷安排员工学习计划,掌握团队学习仪表盘。
  6. 戳此申请学生认证,订阅课程享受原价 5 折优惠。
  7. 价格说明:划线价、订阅价为商品或服务的参考价,并非原价,该价格仅供参考。未划线价格为商品或服务的实时标价,具体成交价格根据商品或服务参加优惠活动,或使用优惠券、礼券、赠币等不同情形发生变化,最终实际成交价格以订单结算页价格为准。
讲师

蒋德钧

中科院计算所副研究员

蒋德钧,中科院计算所副研究员,长期致力于研究 Redis,有 15 年云计算系统、存储系统和键值数据库的研发经验和技术积累。他还和蚂蚁金服、百度、华为、中兴等公司,围绕键值数据库开展过多种研制与优化项目合作,具有非常丰富的 Redis 实战经验。 另外,他在键值数据库方面,还先后开...查看更多
编辑推荐
讲师的其他课程
Redis 核心技术与实战
蒋德钧
中科院计算所副研究员

53讲 | 81730 人已学习

¥68¥199
包含这门课的学习路径

Java工程师

29门课程 154.7w人学习
看过的人还看了
Redis 核心技术与实战
蒋德钧
中科院计算所副研究员

53讲 | 81730 人已学习

¥68¥199
MySQL 实战 45 讲
林晓斌
网名丁奇,前腾讯云数据库负责人

49讲 | 224923 人已学习

¥68¥199
数据结构与算法之美
王争
前 Google 工程师

81讲 | 283786 人已学习

¥68¥199
设计模式之美
王争
前 Google 工程师,《数据结构与算法之美》专栏作者

113讲 | 123454 人已学习

¥98¥299
左耳听风
陈皓
网名“左耳朵耗子”,资深技术专家

119讲 | 180989 人已学习

¥98¥399
从 0 开始学架构
李运华
网名“华仔”,前阿里资深技术专家(P9)

66讲 | 152607 人已学习

¥68¥199