当前位置: 首页 > redis源码分析
  • rdb是redis保存内存数据到磁盘数据的其中一种方式(另一种是AOF)。Rdb的主要原理就是在某个时间点把内存中的所有数据的快照保存一份到磁盘上。在条件达到时通过fork一个子进程把内存中的数据写到一个临时文件中来实现保存数据快照。在所有数据写完后再把这个临时文件用原子函数rename(2)重命名为目标rdb文件。这种实现方式充分利用fork的copy on write。另外一种是通过save命令主动触发保存数据快照,这种是阻塞式的,即不会通过生成子进程来进行数据集快照的保存。

    阅读全文
  • Redis作为一个NoSQL类型的数据库,使用的是key作为存取对象的唯一标识,对“key”的通俗理解就是“字符串”。在Redis中字符串又分为两类:二进制安全(Binary Safe)的和非二进制安全的。Redis中使用字符串作为它的键,同时字符串也是“值”所使用的最基本的数据类型。当然还有更复杂的类型,比如:列表,集合,有序集合以及哈希表,不过即使是这些复杂的类型也是使用字符串来实现的。

    阅读全文
    redis, 分布式系统, 缓存系统 498 人阅读 抢沙发 , ,
  • Redis通过定义一个 struct redisServer 类型的全局变量server 来保存服务器的相关信息(比如:配置信息,统计信息,服务器状态等等)。启动时通过读取配置文件里边的信息对server进行初始化(如果没有指定配置文件,将使用默认值对sever进行初始化),初始化的内容有:起监听端口,绑定有新连接时的回调函数,绑定服务器的定时函数,虚拟内存初始化,log初始化等等。

    阅读全文