2020年7月28日
摘要: 定时删除 定时删除策略对内存是最友好的: 因为它保证过期键会在第一时间被删除, 过期键所消耗的内存会立即被释放。 这种策略的缺点是, 它对 CPU 时间是最不友好的: 因为删除操作可能会占用大量的 CPU 时间 —— 在内存不紧张、但是 CPU 时间非常紧张的时候 (比如说,进行交集计算或排序的时候 阅读全文
posted @ 2020-07-28 18:39 围龙小子 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 参考:http://origin.redisbook.com/internal/db.html Redis 有四个命令可以设置键的生存时间(可以存活多久)和过期时间(什么时候到期): EXPIRE 以秒为单位设置键的生存时间; PEXPIRE 以毫秒为单位设置键的生存时间; EXPIREAT 以秒为 阅读全文
posted @ 2020-07-28 18:37 围龙小子 阅读(238) 评论(0) 推荐(0) 编辑
  2020年7月27日
摘要: AOF 持久化功能的实现可以分为命令追加(append)、文件写入、文件同步(sync)三个步骤。 命令追加 当 AOF 持久化功能处于打开状态时, 服务器在执行完一个写命令之后, 会以协议格式将被执行的写命令追加到服务器状态的 aof_buf 缓冲区的末尾: struct redisServer 阅读全文
posted @ 2020-07-27 13:43 围龙小子 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 参考:http://origin.redisbook.com/ edis 服务器的所有数据库都保存在 redisServer.db 数组中, 而数据库的数量则由 redisServer.dbnum 属性保存。 客户端通过修改目标数据库指针, 让它指向 redisServer.db 数组中的不同元素来 阅读全文
posted @ 2020-07-27 13:38 围龙小子 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 整数集合(intset)是集合键的底层实现之一: 当一个集合只包含整数值元素, 并且这个集合的元素数量不多时, Redis 就会使用整数集合作为集合键的底层实现。 举个例子, 如果我们创建一个只包含五个元素的集合键, 并且集合中的所有元素都是整数值, 那么这个集合键的底层实现就会是整数集合: red 阅读全文
posted @ 2020-07-27 13:35 围龙小子 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 跳跃表(skiplist)是一种有序数据结构, 它通过在每个节点中维持多个指向其他节点的指针, 从而达到快速访问节点的目的。 跳跃表支持平均 O(\log N) 最坏 O(N) 复杂度的节点查找, 还可以通过顺序性操作来批量处理节点。 在大部分情况下, 跳跃表的效率可以和平衡树相媲美, 并且因为跳跃 阅读全文
posted @ 2020-07-27 13:29 围龙小子 阅读(151) 评论(0) 推荐(0) 编辑
  2020年7月24日
摘要: 字典, 又称符号表(symbol table)、关联数组(associative array)或者映射(map), 是一种用于保存键值对(key-value pair)的抽象数据结构。 字典在 Redis 中的应用相当广泛, 比如 Redis 的数据库就是使用字典来作为底层实现的, 对数据库的增、删 阅读全文
posted @ 2020-07-24 17:30 围龙小子 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 1、每个链表节点使用一个adlist.h/listNode结构来表示:typedef struct listNode { // 前置节点 struct listNode *prev; // 后置节点 struct listNode *next; // 节点的值 void *value; } list 阅读全文
posted @ 2020-07-24 17:05 围龙小子 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 参考:http://redisbook.com/preview/sds/different_between_sds_and_c_string.html Redis 只会使用 C 字符串作为字面量, 在大多数情况下, Redis 使用 SDS (Simple Dynamic String,简单动态字符 阅读全文
posted @ 2020-07-24 16:39 围龙小子 阅读(133) 评论(0) 推荐(0) 编辑
  2020年7月23日
摘要: 监控指标 性能指标: Performance 内存指标: Memory 基本活动指标:Basic activity 持久性指标: Persistence 错误指标: Error 性能指标:Performance NameDescription latency Redis响应一个请求的时间 insta 阅读全文
posted @ 2020-07-23 16:54 围龙小子 阅读(179) 评论(0) 推荐(0) 编辑