本作品采用知识共享署名 4.0 国际许可协议进行许可.转载联系作者并保留声明头部与原文链接https://luzeshu.com/blog/redis1 本博客同步在http://www.cnblogs.com/papertree/p/7159802.html 这个系列博客大部分完成于一年前,基于3.0.5版本(但是代码行数不一定完全相符,调试过程中会修改一些代码). 这一篇博客针对第二篇涉及到的redisClient.redisDb.redisObject(robj)等几个结构体,以及redi…
文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读.由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出. 曹工说Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果 一些补充知识 项目结构及入口 除了大学那些玩具,一个真正的项目,都是由大量源代码文件组成一个工程.在Java里,一个 java…
文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读.由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出. 曹工说Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果 曹工说Redis源码(2)-- redis server 启动过程解析及简单c语言基础知识补充 本讲主题 首先,会再补充一点c…
曹工说Redis源码(5)-- redis server 启动过程解析,eventLoop处理事件前的准备工作(下) 文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读.由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出. 曹工说Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果 曹工说R…
文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读.由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出. 曹工说Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果 曹工说Redis源码(2)-- redis server 启动过程解析及简单c语言基础知识补充 曹工说Redis源码(3)--…
文章导航 Redis源码系列的初衷,是帮助我们更好地理解Redis,更懂Redis,而怎么才能懂,光看是不够的,建议跟着下面的这一篇,把环境搭建起来,后续可以自己阅读源码,或者跟着我这边一起阅读.由于我用c也是好几年以前了,些许错误在所难免,希望读者能不吝指出. 曹工说Redis源码(1)-- redis debug环境搭建,使用clion,达到和调试java一样的效果 曹工说Redis源码(2)-- redis server 启动过程解析及简单c语言基础知识补充 曹工说Redis源码(3)--…
[redis源码分析]http://blog.csdn.net/column/details/redis-source.html   Redis源代码重要目录 dict.c:也是很重要的两个文件,主要对于内存中的hash进行管理: adlist.c:用于对list的定义,它是个双向链表结构 sds.c:用于对字符串的定义,从头文件可以找到: object.c:用于创建和释放redisObject对象 sort.c:关于排序算法,sort.c具体作为Redis场景下的排序实现. multi.c:用…
前言 Redis源码中定义了几个和日志相关的函数,用于将不同级别的信息打印到不同的位置(日志文件或标准输出,取决于配置文件的设置),这些函数的定义位于 server.h 和server.c 文件中,包括: void serverLog(int level, const char *fmt, ...); void serverLogRaw(int level, const char *msg); void serverLogFromHandler(int level, const char *ms…
前言 问题 阶段 1:基本初始化 阶段 2:检查哨兵模式,执行 RDB 或 AOF 检测 阶段 3:运行参数解析 阶段 4:初始化 server 资源管理 初始化数据库 创建事件驱动框架 阶段 5:执行事件驱动框架 参考链接 Redis 源码简洁剖析系列 前言 main 函数是 Redis 整个运行程序的入口.源码主要在 server.c 文件中. 前面 6 篇文章分析了 Redis 的基础数据结构. Redis 源码简洁剖析 01 - 环境配置 Redis 源码简洁剖析 02 - SDS 字符…
目录 目录 1 1. 前言 2 2. 名词 2 3. dict.c 2 3.1. siphash算法 2 3.2. 核心函数 3 3.3. 核心宏 3 3.4. 核心结构体 3 3.4.1. dictEntry 3 4. Redis命令 4 4.1. SELECT命令 4 4.1.1. redisCommand结构体 4 4.1.2. redisCommandTable变量 5 4.1.3. selectCommand函数 5 4.2. SET命令 6 4.2.1. setCommand函数 6…