摘要: RDB持久化: 一、引言: 命令 功能 SAVE 创建RDB文件;阻塞服务器进程 BGSAVE 创建RDB文件;派生子进程,所以不阻塞服务器进程 ​ RDB文件以二进制形式存储,通过保存服务器中所有非空数据库以及其中的所有键值对(数据库状态)实现持久化; 二、RDB文件的创建: ​ BGSAVE和S 阅读全文
posted @ 2022-02-08 21:38 macguz 阅读(92) 评论(0) 推荐(0) 编辑
摘要: AOF持久化: ​ 与RDB持久化通过保存数据库中的键值对来记录数据库状态不同,AOF持久化是通过保存Redis服务器所执行的写命令来记录数据库状态的。 一、结构实现: ​ redisServer中有关AOF持久化的字段: list *aof_rewrite_buf_blocks; /* Hold 阅读全文
posted @ 2022-02-08 19:46 macguz 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 命令传播: ​ 命令传播有两个对象: AOF文件: ​ AOF文件接收服务器发来的命令; 主从复制模式下的从服务器: ​ 从服务器与主服务器同步后,进行命令传播,从服务器接收主服务器发来的命令并执行[1]; ​ propagate函数会在call函数[1]中被调用,所以服务器执行命令,数据库状态产生 阅读全文
posted @ 2022-02-08 18:28 macguz 阅读(187) 评论(0) 推荐(0) 编辑
摘要: Redis源码分析--目录: 单机数据库服务器: Redis源码分析--事件处理器 - macguz - 博客园 (cnblogs.com) Redis源码分析--服务器(1)结构与启动 - macguz - 博客园 (cnblogs.com) Redis源码分析--服务器(2)执行命令的过程 - 阅读全文
posted @ 2022-02-08 15:48 macguz 阅读(62) 评论(0) 推荐(0) 编辑