摘要: Sentinel(哨兵)是 Redis 的高可用解决方案:由一个或多个 Sentinel 实例组成的 Sentinel 系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线状态时,自动将下线主服务器属下的某个从服务器升级为新的主服务器,然后由新的主服务器代替 阅读全文
posted @ 2019-09-06 15:08 风中抚雪 阅读(455) 评论(0) 推荐(0) 编辑
摘要: Redis 中,可以通过执行 savleof 命令或者设置 slaveof 选项,让一个服务器去复制另一个服务器,我们称被复制的服务器为主服务器,而对主服务器进行复制的服务器则被称为从服务器。 Redis 2.8 之前复制功能的实现 Redis 中的复制分为同步和命令传播两个操作。 同步操作是将从服 阅读全文
posted @ 2019-08-22 19:59 风中抚雪 阅读(410) 评论(0) 推荐(0) 编辑
摘要: Redis 服务器是一个事件驱动程序,服务器需要处理以下两类事件: 文件事件: Redis 服务器通过套接字与客户端(或者其他 Redis 服务器)进行连接,而文件事件就是服务器对套接字操作的抽象。服务器与客户端(或者其他服务器)的通信会产生相应的文件事件,而服务器则通过监听并处理这些事件来完成一系 阅读全文
posted @ 2019-08-09 13:01 风中抚雪 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 因为 Redis 是内存数据库,它将自己的数据储存在内存里面,所以如果不想办法将储存在内存中的数据库状态保存到磁盘里面,那么一旦服务器进程退出,服务器中的数据也将会丢失,为了解决这个问题,Redis 提供了持久化的功能。 Redis 中的持久化有两种,分别是 RDB 和 AOF。 RDB 持久化 R 阅读全文
posted @ 2019-08-02 11:44 风中抚雪 阅读(272) 评论(0) 推荐(0) 编辑
摘要: Redis 是一个使用 C 语言编写的 NoSql 的数据库,本篇就讲解在 Redis 中数据库是如何存储的?以及和数据库有关的一些操作。 Redis 中的所有数据库都保存在 redis.h/redisServer 结构中的 db 数组中,如下: struct redisServer { ..... 阅读全文
posted @ 2019-07-26 12:17 风中抚雪 阅读(436) 评论(0) 推荐(0) 编辑
摘要: Redis 对象 在以前的文章中,我们介绍了 Redis 用到的主要数据结构,比如简单动态字符串、双端链表、字典、压缩列表、整数集合。 然而 Redis 并没有直接使用这些数据结构来实现键值对的数据库,而是在这些数据结构之上又包装了一层 RedisObject(对象),RedisObject 有五种 阅读全文
posted @ 2019-07-12 13:49 风中抚雪 阅读(8363) 评论(0) 推荐(0) 编辑
摘要: 整数集合 Redis 中当一个集合(set)中只包含整数,并且元素不多时,底层使用整数集合实现,否则使用字典实现。 那么: 为什么会出现整数集合呢?都使用字典存储不行吗? 整数集合在 Redis 中的结构是怎样的呢? 引入整数集合之后,会不会出现什么弊端?Redis 又是如何去解决的呢? 为什么会出 阅读全文
posted @ 2019-07-05 13:09 风中抚雪 阅读(773) 评论(0) 推荐(0) 编辑
摘要: 跳表 跳表(skiplist)是一种有序的数据结构,是在有序链表的基础上发展起来的。 在 Redis 中跳表是有序集合(sort set)的底层实现之一。 说到 Redis 中的有序集合,是不是和 Java 中的 TreeMap 很像?都是有序集合。 那么: 为什么会出现跳表这种数据结构呢? 跳表的 阅读全文
posted @ 2019-06-28 14:43 风中抚雪 阅读(3122) 评论(0) 推荐(1) 编辑
摘要: 字典 字典又称为符号表、关联数组或映射(map),是一种用于保存键值对(key value)的数据结构。 那么 C 语言中有没有这样 key value 型的内置数据结构呢? 答案:没有。 说起键值对,是不是想到了 Java 中的 Map?Java中的 Map 实现有两个:HashMap 和 Tre 阅读全文
posted @ 2019-06-19 20:50 风中抚雪 阅读(833) 评论(0) 推荐(1) 编辑
摘要: 本次学习除了基本内容之外主要思考三个问题:why(为什么)、what(原理是什么)、which(同类中还有哪些类似的东西,相比有什么区别)。 由于我对 java 比较熟悉,并且 java 中也有字符串和链表。所以本篇暂拿 redis 中的字符串和链表与 java 进行对比。 字符串 先看几个问题: 阅读全文
posted @ 2019-06-14 10:28 风中抚雪 阅读(1101) 评论(0) 推荐(0) 编辑