一块儿学习redis源码

redis的一些介绍,麻烦阅读前面的几篇文章,想对redis的详细实现有所了解,强力推荐《redis设计与实现》(不单单从做者那儿学习到redis的实现,还有项目的管理、思想等,做者可能比你我都年轻欧)。若是阅读了上面的文档,激起你对redis的强力好奇,那么就只能阅读源码了。无论是在校学生,仍是已工做的,redis的代码都值得阅读。咱们能够了解如何编写一个工程可用软件,能够学习一些开源经常使用软件,经过redis丰富的数据结构,能够熟悉大学学习的那点儿数据结构,能够了解如何实现一个本身高效的网络框架等等。html

我看到有人介绍redis源代码的阅读方法以下:redis

  1. 自底向上:从耦合关系最小的模块开始读,而后逐渐过分到关系紧密的模块。就好像写程序的测试同样,先从单元测试开始,而后才到功能测试。我在刚开始读 Redis 源码的时候,使用的就是这种方法:先从单独的数据结构模块开始,而后再过渡到高层的功能模块。数据库

  2. 从功能入手:经过文件名(模块名)和函数名,快速定位到一个功能的具体实现,而后追踪整个实现的运做流程,从而了解该功能的实现方式。我在读阻塞列表、数据库这种流程和功能都比较复杂,和其余文件耦合也比较多的模块时,使用的就是这样的方法。网络

  3. 自顶向下:从程序的 main() 函数,或者某个特别大的调用者函数为入口,以深度优先或者广度优先的方式阅读它的源码。我在阅读 redis.c/serverCron() 、 redis.c/main() 和 ae.c/aeMain() 这种有明显调用者性质的函数时,使用的就是这样的方法。数据结构

我以为不错,能够做为参考欧。框架

你是吧如今就准备动手了,可是一我的阅读代码,写文档比较枯燥,惧怕本身坚持不住,而且我的能力有些,有可能对有些代码理解错误或者不能觉察做者的用意。所以准备探索一种新的代码阅读模式,经过一个开源项目和一个qq群把你们团结起来,开源项目的提交人必须是有限的,可是正在阅读代码的人可能不少,发现了问题不能及时反馈或者咨询,QQ群比较及时。开源项目是一个代码分析的文档,restructured text格式,使用sphinx进行生成各类文档格式。sphinx的使用能够参考:( sphinx命令 绘图)等。寻找四个有兴趣的小伙伴能够进行编辑,别的小伙伴就很差意思了,由于bitbucket只能免费支持五个,只能在qq群反馈意见。函数

 

为了创建信任,就作一下自我介绍:2012年毕业于西安电子科技大学,如今就任于一家深圳网络公司,从一进公司就是作数据仓库这一起的,公司使用的是自研的系统,详细就不太方便介绍。对大数据比较感兴趣,同时也在了解一些hadoop、spark的知识。可是,这是第一次进行这样的尝试,如有什么好的建议欢迎提给楼主欧。oop

项目地址:https://bitbucket.org/softfree/redis_doc单元测试

点击连接加入群【redis】学习

redis源码解析 http://redissrc.readthedocs.org/en/latest/

若是想成为文档编辑者可邮件,最好作一下简单自我介绍:371387455(at)qq.com

复制去Google翻译 翻译结果
http://redissrc.readthedocs.org/en/latest/
相关文章
相关标签/搜索