Redis 源码剖析与实战
蒋德钧
中科院计算所副研究员
17747 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 47 讲
Redis 源码剖析与实战
15
15
1.0x
00:00/00:00
登录|注册

结束语 | Redis源码阅读,让我们从新开始

你好,我是蒋德钧。不知不觉中,我和你又一起走过了 3 个多月的时光。在这 3 个多月的时间里,我和你一起并肩作战,去学习和了解了 Redis 的源码。跟第一季的课程内容相比,这一季学习的内容的确更有难度,也更加需要你能静下心来钻研。
这里先感谢你的一路陪伴,我们一起走到了现在。做这样一门专栏,我自己也是收获了很多、成长了很多。那么最后一节课,我就把我在做这门课程里三点最重要的认知分享给你,我们一起持续精进。

用源码重新认知你的知识体系

其实,要是用一句话来总结我的感受,那就是,阅读源码让我感到“从新开始”。
我在学习 Redis 源码之前,已经对 Redis 的一些基本原理、一些常见的后端系统设计都有了了解和掌握,本身也有一些 C 语言的开发经历。我相信,我当时的状态和此刻正在阅读这篇结束语的你可能很相似。
而在学习了 Redis 源码后,我发现自己在 C 语言编程技巧、计算机系统关键机制,还有系统设计原则等等很多方面,都有了新的认识。这些新认知,是源于对 Redis 源码设计与实现的学习,而源码学习本身又给我提供了高于 Redis 的通用知识的掌握,这让我受益匪浅。
就比如说,我以前在学习操作系统时,了解了进程间通信的方法有消息队列、命名管道、无名管道、共享内存等等,但是一直没能建立直观的认知。而在阅读 Redis 源码时,我发现 Redis 广泛地使用了无名管道,来支持父子进程间的通信。这一下子就在我的知识体系中,增加了对管道实际开发使用的新认知,这也让我有了一种实践正好结合理论的体会。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

通过阅读Redis源码,作者重新认知了自己的知识体系,发现源码学习不仅提供了对Redis的深入理解,还让他掌握了更多计算机系统知识。此外,源码阅读也磨炼了作者的意志力,让他学会迎难而上,通过细粒度化的目标拆分,不断积累成就感。最重要的是,源码阅读重新塑造了作者的做事原则,让他意识到学习和做事是一个循环向上的过程,需要经历“认知、实践、再认知、再实践”的循环。这些经历不仅帮助作者在开发工作中更加从容,也让他明白了学习和做事的本质,不应因一时挫折而气馁,也不应因一时成就而停滞不前。源码阅读不仅是技术的学习,更是一种思维和态度的塑造。 文章总结:通过Redis源码阅读,作者不仅深入理解了Redis,还获得了更多计算机系统知识。源码阅读磨炼了作者的意志力,让他意识到学习和做事是一个循环向上的过程。这些经历不仅帮助作者在开发工作中更从容,也让他明白了学习和做事的本质。源码阅读不仅是技术的学习,更是一种思维和态度的塑造。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Redis 源码剖析与实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(9)

  • 最新
  • 精选
  • Kaito
    时间过得真快,这次又和第一季 Redis 专栏一样,全程跟了下来,并在留言区持续输出了 3 个多月。 按照惯例也做一个总结,这 3 个多月在评论区写下的留言 + 1 篇加餐文章,共计输出近 4 万字,又被自己吓到,再次见证时间的力量。 这个专栏学习难度要比第一季高很多,刚开始很担心无法做到持续输出,但还是咬牙坚持下来了,又一次突破了自己。 虽然之前已经读了不少 Redis 源码,但这次全程跟下来,还是收获很多,又给自己的 Redis 知识图谱补充了更多细节。这也让我再次体会到,要想真正吃透一项技术,反复咀嚼是必做的功课。 这次写留言比上一季难度大了很多,由于源码涉及到的都是细节,每次写留言时,都至少要把文章读 2 遍以上,然后再翻一遍源码,不确定的地方反复查资料确认,这也再次印证了那句话:输出就是最好的输入。 从第一季到第二季,这一年的时间里,自己也从一个学习者,逐渐变成一个持续输出者,心态也变得更加开放,敢于迎接挑战。 专栏虽然结束,但成长之路不会停歇,就像专栏所说的,这既是一个阶段的结束,但更是一个新阶段的开始,共勉!
    2021-11-06
    3
    26
  • 曾轼麟
    感谢蒋老师两个专栏的倾囊相授,通过这3个多月的学习我在这期间也成长了许多,也了解到了许多我曾经没注意到的Redis细节。 由于最近自己近期刚刚成立了家庭,以及年底公司业务量攀升的原因,到专栏后期我的学习进度有点脱离了大部队,很抱歉专栏后期没能再次积极的参与到专栏的讨论中来。 总结: 本期整篇专栏按照 导读 -> 数据结构 -> 事件驱动设计与执行层 -> 缓存模块 -> 可靠性保证 -> RedisCluster -> 编程技巧 -> 每日一课答疑 的顺序给我们基本上完整的介绍了一遍Redis的源码实现和底层设计原理,当然Redis还有许多更加细节的内容等待着我们发掘比如:Lua的整合实现,RESP的编解码,混合模式持久化等等,也相信大家一定会继续深入下去。 在本专栏的学习中,我也从老师介绍【主从复制,哨兵Raft实现,Pub/Sub故障迁移】的这几篇文章中得到启发,并且在近期和同事知识分享后发现,系统设计方面的知识也很重要,于是我购买了《数据密集型应用系统设计》这本书,打算进一步的学习。 Redis其实是一款很轻量级的内存数据库,但是麻雀虽小内脏俱全,Redis很多时候的设计甚至很前卫,比如在哨兵选主上面使用Raft的实现方式,可以说在某种程度上领先了kafka的设计,kafka直到近期才提出要摆脱zookeeper的束缚。此外Redis的持久化混合模式(AOF + RDB)也是一种特别的思路去解决持久化的问题,而这些都值得我们进一步的学习。 最后,Redis是一款设计优秀的产品,非常值得我们继续的深入研究和学习。在学习期间收获的无论是编码技巧,操作系统知识,计算机原理知识,还是数据结构知识,都能让我们的能力得到进一步的提升。
    2021-11-15
    2
  • Geek_728b54
    可以加入老师的组织么?
    2024-01-09归属地:北京
  • neohope
    感谢老师,收获满满。之前由于各种原因,中断了两个月,今天终于看完了。 老师的课程总有一种帮大家从繁杂事务中梳理出清晰主线的神奇功效,希望老师继续出其他课程啊,再次感谢!
    2022-03-30
  • 木几丶
    断断续续跟了大半年,这一季跟下来收获颇丰,每篇文章都认真消化 跟着老师读源码,给我最大的感受是:读源码开头很难,但是只要咬牙坚持,最终那种豁然开朗醍醐灌顶的感觉和那种成就感会觉得自己花的时间是非常值得的。 在阅读第一季的时候,老师讲Redis的原理相当精彩,但是由于篇幅和难度控制的原因省去了很多细节,当时也留下了不少疑惑,通过这一季的学习学会了自己去源码找答案,再回去读第一季真的会有不同的体会,自己也会尝试去解答评论区中的留言,对我来说 这对建立自己的知识体系有很大的帮助。 最后感谢蒋老师两季的倾囊相授,这一季虽然结束,但Redis的进阶之路才刚刚开始。
    2022-03-02
  • 无痕之意
    从第1季看到第2季,虽然勉强跟到大家看到这里,不过中间很多课程都没有理解只是大概过一遍,打算最近先整理下学习的东西,过几天重新出发,重新刷一遍第1季和第2季,希望第2次看的时候能有更多的收获,谢谢大佬们的分享。 看下来到这里时已经是不一样的自己,收获满满的自己。
    2022-02-14
  • Xi
    跟着第一季到第二季,都看完一遍了,以后还会经常温故知新的。非常感谢老师的精彩讲解,收获满满,也非常感谢Kaito同学的精彩留言(每期都会看,哈哈),希望以后自己也能像Kaito同学一样从学习者变成输出者,加油,共勉!
    2021-12-06
  • Geek_de83f6
    为什么没有讲cluster的故障转移逻辑呢???
    2021-11-14
  • Milittle
    感谢老师的精彩输出 感谢Kaito
    2021-11-12
收起评论
显示
设置
留言
9
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部