本文主要是作为自己的读书笔记,以便对知识进行总结,日后可以快速回忆相关内容
书名:《Redis设计与实现》
正版图书购买链接:京东
这本书主要讲解了Redis内部机制与实现方式,对redis大多数单机功能以及舵机功能的实现原理记性了介绍。
本书共分为四部分:
-
第一部分:数据结构域对象
介绍了Redis中各种对象以及数据结构,并说明这些数据结构如何影响对象的功能和性能
-
第二部分:单机数据库实现
包括数据库实现原理(包括键值对的存储方法、对过期时间的保存方法、自动删除过期键值对的方法)
RDB持久化、AOF持久化两种不同的持久化的原理,服务器如何通过持久化文件进行数据还原
文件事件、时间事件
以及客户端以及单机服务器等
-
第三部分:多机数据库实现
包括Sentinel、复制、集群
-
第四部分:独立功能的实现
涉及发布订阅、事务、Lua脚本、排序、二进制位数组、慢查询日志、监视器等
第1章 引言
http://www.redisbook.com提供了一份详细的带有详细注释的Redis源代码,有助于更加深入的了解实现原理。
Redis数据库里面每个键值对(key-value pair)都是由对象(object)组成的,其中:
-
数据库键总是一个字符串对象
-
数据库键的值可能是
-
字符串对象
-
列表对象(list object)
-
哈希对象(hash object)
-
集合对象(set object)
-
有序集合对象(sorted set object)
这五种对象中的一种
-
环境搭建
安装
$ wget https://download.redis.io/releases/redis-6.2.4.tar.gz
$ tar xzf redis-6.2.4.tar.gz
$ cd redis-6.2.4
$ make
启动服务器
$ src/redis-server
启动客户端
$ src/redis-cli