redis
文章平均质量分 73
Yan-D
这个作者很懒,什么都没留下…
展开
-
【Redis 源码】7RDB持久化
当某个 key 存储的 hash 数据大小都小于 hash-max-ziplist-entries 或者 hash-max-ziplist-values 的值时。当某个 key 存储的 hash 数据的大小超过 hash-max-ziplist-entries 或者 hash-max-ziplist-values 的值时。2 byte 无符号整数,采用小端字节序编码。主要用于在二进制文件中存储下一个对象的长度,如在编码一个 key 时,使用该方法在 key 的前几个 byte 存储该 key 占用字节数。原创 2024-09-27 11:03:34 · 567 阅读 · 0 评论 -
【Redis 源码】6AOF持久化
RDB (快照)定期保存内存中的数据到磁盘。文件紧凑,适合备份和灾难恢复。恢复速度快,但可能丢失最后一次快照之后的数据。AOF (日志)记录每个写操作,并追加到文件中。可以设置不同的 fsync 策略来平衡性能和数据安全性。数据更完整,但文件较大,恢复速度较慢。原创 2024-09-27 11:02:32 · 674 阅读 · 0 评论 -
【Redis 源码】5zskiplist跳跃表
什么是 Redis 的 ZSET(Sorted Set)Redis 的 ZSET 是一种有序集合,它结合了 Set 的唯一性和 List 的排序功能。每个元素都有一个分数(score),元素根据分数进行排序。ZSET 支持高效的插入、删除和查找操作。ZSET 的内部实现是什么ZSET 内部使用两种数据结构:跳跃表(Skip List):用于保持元素的有序性,并提供高效的插入、删除和查找操作。字典(Dictionary):用于保证元素的唯一性,并存储元素到分数的映射关系。原创 2024-09-27 11:01:58 · 300 阅读 · 0 评论 -
【Redis 源码】4adlist列表.md
在 Redis 中,链表是用来实现列表(list)数据类型的底层数据结构之一。链表在 Redis 中被称为。,它是一个双向链表,每个节点包含一个指向数据的指针。原创 2024-09-27 11:00:37 · 186 阅读 · 0 评论 -
【Redis 源码】3dict字典数据结构
Redis 使用双散列表机制来支持自动扩容。当散列表的负载因子(已使用的槽位数除以总的槽位数)超过一定阈值时,Redis 会创建一个新的更大的散列表,并逐步将旧散列表中的条目迁移到新的散列表中。这样做有两个好处:首先,它可以避免在高负载下一次性重新散列整个表所带来的性能影响;其次,它确保了散列表的负载因子保持在一个合理的水平,从而保持了良好的性能。原创 2024-09-27 11:00:04 · 921 阅读 · 0 评论 -
【Redis 源码】2项目结构说明
【代码】【Redis 源码】2项目结构说明。原创 2024-09-27 10:58:10 · 162 阅读 · 0 评论 -
【Redis 源码】1下载与源码编译
-O0” 参数表示告诉编译器不要优化代码,防止你在 Debug 的时候, IDE 里面的 Redis 源码与实际运行的代码对应不上。在src目录下我们可以找到 编译后的文件。在 redis目录下执行make。本次下载的是6.2.5 版本。原创 2024-09-27 10:57:34 · 160 阅读 · 0 评论