Redis--COW(Copy On Write) 时间: 2023-02-10 | 分类: redis | 阅读: 1532 字 ~4分钟 问题概述: 1、RDB的过程中是否会停止对外提供服务? 2、RDB的过程中数据修改了,备份的是修改前的还是修改后的? 3、RDB时是不是先把内容中的所有KV复制一份,保证数据不会被修改? 阅读全文 »
高频面试:如何保障 MySQL 和 Redis 的数据一致性? 时间: 2023-02-10 | 分类: redis | 阅读: 2070 字 ~5分钟 我直接先抛一下结论:**在满足实时性的条件下,不存在两者完全保存一致的方案,只有最终一致性方案。** 根据网上的众多解决方案,总结出 6 种 阅读全文 »
Raft协议实战之Redis Sentinel的选举Leader源码解析 时间: 2023-02-09 | 分类: redis | 阅读: 10285 字 ~21分钟 Raft协议是用来解决分布式系统一致性问题的协议,在很长一段时间,Paxos被认为是解决分布式系统一致性的代名词。但是Paxos难于理解,更难以实现,诸如Google大牛们开发的分布式锁系统Chubby都遭遇了很多坑。Raft协议设计的初衷就是容易实现,保证对于普遍的人群都可以十分舒适容易的去理解。另外,它必须能够让人形成直观的认识,这样系统的构建者才能够在现实中进行必然的扩展。 阅读全文 »
Redis 设置bgsave生成的rdb文件位置 时间: 2023-02-09 | 分类: redis | 阅读: 888 字 ~2分钟 bgsave命令生成的rdb文件,配置在配置文件的 `dir`配置后的目录 阅读全文 »
Redis源码阅读01-读了一下redis启动流程的源码 时间: 2022-11-08 | 分类: redis | 阅读: 1021 字 ~3分钟 阅读源码是学习一门技术的必经之路,经过1周左右的c语言入门学习,我就开始硬读redis的源码了。因为公司的多版本的改造,所以源码就选择redis6.x的最高版本redis6.2.7。 在阅读源码前,首先要有一些c语言的基础,所以推荐先学一学c语言的基本语法,推荐的书是《c primer plus》,这本书讲的特别细,既可以当作入门的书来看,也可以作为工具书,在遇到问题的时候翻一翻。 阅读全文 »
Redis源码阅读02-数据结构sds 时间: 2022-11-08 | 分类: redis | 阅读: 1941 字 ~4分钟 c语言的字符串表示有一下几个缺点: - c语言的字符串是以`�`作为判断数组结束的标记,所以如果存储的字符串中包含`�`的话,则无法获取全部的字符。 - c语言字符串的获取字符串长度,只能将内容进行遍历后才能获取到长度,时间复杂度是O(n)。 - c语言的字符串不记录长度,在拼接长度时可能造成内存溢出。 阅读全文 »
为什么redis的SDS的最大长度限制为512mb 时间: 2022-11-08 | 分类: redis | 阅读: 340 字 ~1分钟 面试里常会问到redis sds的最大长度是多少,通常统一的回答是512M,但这个512M是拿来的? 阅读全文 »