![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis源码学习
yezefei
这个作者很懒,什么都没留下…
展开
-
redis源码学习5 持久化与I/O 等
涉及持久化处理,I/O 操作先列模块db.c c语言层的数据库APIlazyfree.c 惰性释放空间,通过后台线程aof.c append only file 持久化存储-逐条命令rdb.c 持久化存储-快照childinfo.c aof和rdb 的子进程操作rio.c 面向具体 I/O 设备的数据流的抽象接口syncio.c 同步的socket 和文件I/O 操作bio原创 2018-01-24 20:00:36 · 242 阅读 · 0 评论 -
redis源码学习6 对象和数据
作为重要中间层的对象和一些清除数据的方法object.c 对象evict.c 内存不足时清除一些数据expire.c 超时处理object.c 对象redis对象,但一些时候会直接用 sds 而不是这种间接数据typedef struct redisObject { unsigned type:4; /* 类型 */ unsigned encoding:原创 2018-01-26 00:00:20 · 189 阅读 · 0 评论 -
redis源码学习2 功能性命令及其实现
先学习功能性命令及其实现,是因为我们接触一个新数据库最开始就要了解,并且使用时要非常熟悉的部分。理解它如何实现,有利于知道如何使用哪些命令,知道其优、劣势。先列文件及简要dict.c 字典zipmap.c 内存连续的映射表 intset.c 内存连续的整形有序集ziplist.c 内存连续的多个数据quicklist.c 基于ziplist 的双向链表adlist.c 所有原创 2017-10-17 15:23:08 · 767 阅读 · 0 评论 -
redis源码学习7 一些未分类的功能模块
列内容module.c 模块化接口(先留坑) https://redis.io/topics/modules-introblocked.c notify.c 通过Pub/Sub 实现的操作通知系统multi.c 事务和watchlatency.c 时延监控slowlog.c 慢查询日志blocked.c 用于客户端的阻塞、等待操作与t_list.c 相关联。BLPO原创 2018-01-26 16:31:35 · 174 阅读 · 0 评论 -
redis源码学习8 内存管理
列文件zmallo.c 内存管理defrag.c 碎片整理zmallo.c 内存管理默认定义了宏 HAVE_MALLOC_SIZE,所以会用静态变量 used_memory 存储使用的内存大小并在分配释放内存时更新它。更新时是命名为 atomic* 的宏做的原子操作。defrag.c 碎片整理只有使用 jemalloc 才支持`activeDef原创 2018-01-26 19:15:13 · 171 阅读 · 0 评论 -
redis源码学习3 启动、配置及socket
现在就从服务器启动入口开始讲先列模块server.c 程序入口,初始化逻辑,主循环逻辑等config.c 配置读写、处理anet.c 操作接口,主要是面向操作系统的接口networking.c 服务器具体网络操作redis-cli.c 客户端跟随 README.md 的脚步走,先看结构主要字段/* redis服务器 */struct redisServer { redisDb *db;原创 2018-01-19 10:59:08 · 405 阅读 · 0 评论 -
redis源码学习4 ae.c 事件循环
基于一个定时器的事件循环,每次循环取已被触发的事件做处理先列模块ae.c event loop 主模块ae_evport.c 负责调用 evport 的接口ae_epoll.c 负责调用 epoll 的接口ae_kqueue.c 负责调用 kqueue 的接口ae_select.c 负责调用 select 的接口注意evport, epoll, kqueue, select原创 2018-01-19 18:23:24 · 825 阅读 · 0 评论 -
redis源码学习1 总揽
参考 http://blog.csdn.net/column/details/redis-code.html 源码版本是github 拉下来的,截至2017/9/29 的版本学习流程计划 * 从使用入手,学习用到的数据结构,为何用、如何用。 * 服务器启动、配置及socket * 服务器事件循环模型 * 数据落地或存内存,以及日志 * 一些重要结构的分析 * 集群、主从 *原创 2017-10-17 14:39:29 · 257 阅读 · 0 评论