摘要: 简介 redis支持在线将slot迁移到指定的节点,但是slot迁移是一个很繁琐的步骤,这里将其脚本化。 基本步骤 # 初始化后的集群 # 插入测试数据 set name dsq # 确定要迁移的slot # 查看key在slot 5798 CLUSTER KEYSLOT ‘name' # 查看节点 阅读全文
posted @ 2024-09-27 17:58 董少奇 阅读(40) 评论(0) 推荐(0)
摘要: 集群搭建 环境 使用一台服务器启动6个redis进程,用来创建一个3主3从的集群。redis版本是6.2.13,该版本下redis-cli有集群初始化的功能。 配置文件 #设置集群模式启动 cluster-enabled yes #集群配置文件存放地方,由服务器进程自动生成,里没有主备节点,slot 阅读全文
posted @ 2024-09-27 17:56 董少奇 阅读(64) 评论(0) 推荐(0)
摘要: 简介 redis命令的执行逻辑是单线程的,因为redis是内存数据库,数据的读写速度非常块,性能的瓶颈一般不会出现在CPU,而是网卡。单线程的模式也就不需要用锁来保护资源的读写。 测试分析 测试案例 # 关闭rdb save "" # 开启rdb, 压测的时候会触发第3条,60秒内有10000次写 阅读全文
posted @ 2024-09-27 17:24 董少奇 阅读(137) 评论(0) 推荐(0)
摘要: 简介 redis的有序集合底层使用了跳表进行实现,其查找性能和红黑树相似,也是log(N),实现起来比红黑树简单。 有序集合命令 # 创建有序集合test 其中的成员为(3,dsq)(6,b)(9,c), 3,6,9是用来排序的,称为分数 ZADD test 3 dsq 6 b 9 c # 在集合t 阅读全文
posted @ 2024-09-27 17:18 董少奇 阅读(13) 评论(0) 推荐(0)
摘要: 简介 aof是redis数据持久化的一种方式,类似mysql的bin-log,就是将数据库的操作命令记录到文件,然后重启的时候从文件加载并执行命令就可以恢复数据库,特点是比rdb更少的数据丢失,保存的文件比rdb文件大,重启加载速度比rdb慢,更少的写磁盘。 配置 # 开启aof appendonl 阅读全文
posted @ 2024-09-27 17:15 董少奇 阅读(12) 评论(0) 推荐(0)
摘要: 主从同步原理 主从第一次同步的时候,主节点先创建rdb文件,然后传输给从节点,从节点加载rdb文件。在这个期间主节点的数据变更命令会被写入到内存缓存区replication buff,从节点加载完rdb文件后,就读取主节点内存缓冲区replication buff中的命令的方式进行增量同步。 如果主 阅读全文
posted @ 2024-09-27 17:14 董少奇 阅读(62) 评论(0) 推荐(0)
摘要: 简介 rdb是redis的数据持久化方式之一,类似数据库的全备,通过将kv数据全量保存到磁盘来进行数据持久化。特点是数据格式紧凑,加载速度快,一般数据丢失是分钟级别。 配置rdb # rdb文件存放路径 dir /usr/local/redis/data # rdb文件名称,结合上面rdb配置,rd 阅读全文
posted @ 2024-09-27 17:10 董少奇 阅读(61) 评论(0) 推荐(0)
摘要: 主从切换简介 redis的主从切换分为自动切换和手动切换: 自动切换的触发机制是集群会定时检查集群中节点状态,当存在主节点是FAIL的时候触发自动切换 手动切换是用户连接到从节点,执行切换命令,触发主从切换。 切换主要的两个处理函数是: clusterHandleManualFailover:手动切 阅读全文
posted @ 2024-09-27 17:08 董少奇 阅读(362) 评论(0) 推荐(0)
摘要: 简介 redis节点的下线状态分为可疑下线和下线: 可疑下线(pfail):当节点A和节点B通信超时,节点A就会认为节点B为可疑下线 下线(fail):当节点A收到超过集群一半的节点认为节点B下线的消息,就认为B是下线了 节点状态维护 clusterCron定时检查节点状态 集群模式下,函数clus 阅读全文
posted @ 2024-09-27 17:07 董少奇 阅读(83) 评论(0) 推荐(0)
摘要: 集群 集群初始化 // cluster.c 初始化集群配置 void clusterInit(void) { int saveconf = 0; server.cluster = zmalloc(sizeof(clusterState)); ... for (int i = 0; i < CLUST 阅读全文
posted @ 2024-09-27 17:04 董少奇 阅读(17) 评论(0) 推荐(0)