首页
登录 | 注册

开始阅读redis源代码

各个源码文件的作用简介

文件 作用
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 命令的阻塞效果。
cluster.c 、 cluster.h Redis 的集群实现。
config.c 、 config.h Redis 的配置管理实现,负责读取并分析配置文件, 然后根据这些配置修改 Redis 服务器的各个选项。
crc16.c 、 crc64.c 、 crc64.h 计算 CRC 校验和。
db.c 数据库实现。
debug.c 调试实现。
dict.c 、 dict.h 字典数据结构的实现。
endianconv.c 、 endianconv.h 二进制的大端、小端转换函数。
fmacros.h 一些移植性方面的宏。
help.h utils/generate-command-help.rb 程序自动生成的命令帮助信息。
hyperloglog.c HyperLogLog 数据结构的实现。
intset.c 、 intset.h 整数集合数据结构的实现,用于优化 SET 类型。
lzf_c.c 、 lzf_d.c 、 lzf.h 、 lzfP.h Redis 对字符串和 RDB 文件进行压缩时使用的 LZF 压缩算法的实现。
Makefile 、 Makefile.dep 构建文件。
memtest.c 内存测试。
mkreleasehdr.sh 用于生成释出信息的脚本。
multi.c Redis 的事务实现。
networking.c Redis 的客户端网络操作库, 用于实现命令请求接收、发送命令回复等工作, 文件中的函数大多为 write 、 read 、 close 等函数的包装, 以及各种协议的分析和构建函数。
notify.c Redis 的数据库通知实现。
object.c Redis 的对象系统实现。
pqsort.c 、 pqsort.h 快速排序(QuickSort)算法的实现。
pubsub.c 发布与订阅功能的实现。
rand.c 、 rand.h 伪随机数生成器。
rdb.c 、 rdb.h RDB 持久化功能的实现。
redisassert.h Redis 自建的断言系统。
redis-benchmark.c Redis 的性能测试程序。
redis.c 负责服务器的启动、维护和关闭等事项。
redis-check-aof.c 、 redis-check-dump.c RDB 文件和 AOF 文件的合法性检查程序。
redis-cli.c Redis 客户端的实现。
redis.h Redis 的主要头文件,记录了 Redis 中的大部分数据结构, 包括服务器状态和客户端状态。
redis-trib.rb Redis 集群的管理程序。
release.c 、 release.h 记录和生成 Redis 的释出版本信息。
replication.c 复制功能的实现。
rio.c 、 rio.h Redis 对文件 I/O 函数的包装, 在普通 I/O 函数的基础上增加了显式缓存、以及计算校验和等功能。
scripting.c 脚本功能的实现。
sds.c 、 sds.h SDS 数据结构的实现,SDS 为 Redis 的默认字符串表示。
sentinel.c Redis Sentinel 的实现。
setproctitle.c 进程环境设置函数。
sha1.c 、 sha1.h SHA1 校验和计算函数。
slowlog.c 、 slowlog.h 慢查询功能的实现。
solarisfixes.h 针对 Solaris 系统的补丁。
sort.c SORT 命令的实现。
syncio.c 同步 I/O 操作。
testhelp.h 测试辅助宏。
t_hash.c 、 t_list.c 、 t_set.c、 t_string.c 、 t_zset.c 定义了 Redis 的各种数据类型,以及这些数据类型的命令。
util.c 、 util.h 各种辅助函数。
valgrind.sup valgrind 的suppression文件。
version.h 记录了 Redis 的版本号。
ziplist.c 、 ziplist.h ZIPLIST 数据结构的实现,用于优化 LIST 类型。
zipmap.c 、 zipmap.h ZIPMAP 数据结构的实现,在 Redis 2.6 以前用与优化 HASH 类型, Redis 2.6 开始已经废弃。
zmalloc.c 、 zmalloc.h 内存管理程序。

相关文章

  • Redis radix tree源码解析
    Redis实现了不定长压缩前缀的radix tree,用在集群模式下存储slot对应的的所有key信息.本文将详述在Redis中如何实现radix tree. 核心数据结构 raxNode是radix tree的核心数据结构,其结构体如下代 ...
  • 从虚拟化前端Bug学习分析Kernel Dump
    前言 也许大家都知道,分析 Kernel Dump 有个常用的工具叫 Crash,在我刚开始学习分析 Kernel Dump 的时候,总是花大量的时间折腾这个工具的用法,却总是记不住这个工具的功能.后来有一次在参加某次内部分享的时候,有位大 ...
  • 微软发布人工智能教育与学习共建社区
    步入2019,人工智能(Artificial Intelligence)的浪潮依然汹涌,各国对于AI人才的需求进一步加大:2月,美国总统特朗普签署行政命令,正式启动美国人工智能计划:加拿大正通过"全球技能战略签证"吸引国 ...
  • 4折购书福利,再送你畅销新书
    4折购书福利,再送你畅销新书   福利一: 扫描下方小程序选购你心仪的图书吧! 423世界读书日图书每满 100 减 50 结算时输入优惠码:UJ7UW7(实付200再减30) 可与每满 100 减 50 活动叠加使用! 也就是说只要花17 ...
  • AI评委引热议,阿里巴巴表示:AI不会取代工程师
    昨日,一位能给工程师代码打分的"AI评委"引发了热议.起因是在2019阿里巴巴"83行代码挑战赛"决赛现场,一位运行在云端的AI评委和现场的专家评委.大众评委配合,一起对选手提交的的代码做综合评价. ...
  • 云原生时代来袭 下一代云数据库技术将走向何方?
    全面云化的时代已经到来,面对一系列的新技术和挑战,数据库市场将面临怎样的变革?作为云服务提供商,如何帮助更多的企业级用户把握"云"潮,提供最高效.最具价值的数据库解决方案? 日前,在阿里云峰会·北京站的数据库专场上,阿里 ...

2020 jeepshoe.net webmaster#jeepshoe.net
13 q. 0.294 s.
京ICP备10005923号