1.前言
本书的版本基于redis 3.0
个人主要是巩固redis基础知识,同时探索redis的分布式使用
2.本书主要内容
(1)数据结构与对象
(2)单机数据库的实现
(3)多机数据库的实现
(4)独立功能的实现
3.数据结构与对象
redis数据库里面的每个键值对(key-value pair)都是由对象(object)组成的。
数据库键总是一个字符串对象(string object)
数据库键的值可以是字符串对象、列表对象(list object)、哈希对象(hash object)、集合对象(set object)、有序集合对象(sorted set object)五种数据类型
4.单机数据库的实现
第9章 介绍服务器保存键值对的方法,服务器保存键值对过期时间的方法,以及服务器删除过期键值对的方法
第10章 rdb/aof两种持久化的实现原理,介绍了服务器根据数据库来生成持久化文件的方法,以及根据持久化文件来生成数据库的方法
第12章 介绍redis的文件事件和时间事件
文件事件:用于处理连接请求、命令请求以及返回命令回复
时间事件:维护和管理操作来保持redis服务器的正常运行,同时也负责触发一些重要的定时操作
第13章 对redis服务器维护和管理客户端状态的方法进行了介绍
第14章 对单机服务器的运行机制进行了介绍
5.多机服务器的实现
第15章 复制(replication):主从复制功能实现的原理
第16章 Sentinel:Sentinel监视服务器的方法,Sentinel判断服务器是否下线的方法,以及Sentinel对下线服务器进行故障转移的方法
第17章 集群(cluster):介绍了集群的实现原理,如节点的构建方法,节点处理命令请求的方法,转发错误的实现方法,以及各个节点进行通信的方法
6.独立功能的实现
第18章 发布与订阅:publish pubsub subscribe命令的实现原理
第19章 事务:multi exec watch命令的实现原理,事务对ACID的支持程度
第20章 Lua脚本:eval evalsha script load命令的实现原理,主从服务器之间复制Lua脚本的方法
第21章 排序:sort命令及其参数desc alpha get的实现原理,以及带有多个参数时,每个参数执行的先后顺序
第22章 二进制位数组:getbit setbit bitcount bitop命令的实现原理
第23章 慢查询日志:slowlog get slowlog len slowlog reset命令的实现原理
第24章 监视器:将客户端变为监视器的方法,以及服务器在处理命令请求时,向监视器发送命令信息的方法