huangz1990 /redis-3.0-annotated
带有详细注释的 Redis 3.0 代码(annotated Redis 3.0 source code)。
★ 10,124⑂ 4,167👁 568⑃ 18● 28▤ 0
10,124
stars
+0+0+-7
4,167
forks
568
watchers
18
prs
28
issues
0
releases
–
discussions
README
Redis 3.0 源码注释 ============================ 本项目是注释版的 Redis 3.0 源码, 原始代码来自: https://github.com/antirez/redis 。 这份注释是我在创作新版《Redis 设计与实现》期间, 为了了解 Redis 的内部实现而制作的, 所有在书中有介绍的内容, 在源码中都进行了相应的注释。 在注释的过程中, 除了少量空格和空行方面的调整外, 没有对原始代码进行任何其他改动, 最大程度地保证了代码的“原汁原味”。 希望这份注释源码能给大家学习和了解 Redis 带来一点帮助。 另外, 新版《Redis 设计与实现》 _\ 正在各大网店发售中, 希望大家可以多多支持这本书。 Have fun! | 黄健宏(huangz) | 2014 年 6 月 28 日 附录:各个源码文件的作用简介 ------------------------------ +-------------------------------------------------------------------+-------------------------------------------------------------------+ | 文件 | 作用 | +===================================================================+===================================================================+ | adlist.c 、 adlist.h | 双端链表数据结构的实现。 | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | ae.c 、 ae.h 、 ae_epoll.c 、 ae_evport.c 、 | 事件处理器,以及各个具体实现。 | | ae_kqueue.c 、 ae_select.c | | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | anet.c 、 anet.h | Redis 的异步网络框架,内容主要为对 socket 库的包装。 | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | aof.c | AOF 功能的实现。 | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | asciilogo.h | 保存了 Redis 的 ASCII LOGO 。 | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | bio.c 、 bio.h | Redis 的后台 I/O 程序,用于将 I/O 操作放到子线程里面执行, | | | 减少 I/O 操作对主线程的阻塞。 | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | bitops.c | 二进制位操作命令的实现文件。 | +-------------------------------------------------------------------+-------------------------------------------------------------------+ | blocked.c | 用于实现 BLPOP 命令和 WAIT 命令的阻塞效果。 | +-----