2026/5/18 23:04:31
网站建设
项目流程
便宜WordPress主机,京东关键词优化技巧,不同的网站前缀就是不同的域名吗,麻将软件开发平台Redis 主从同步#xff08;Replication#xff09;是指将一台 Redis 服务器#xff08;主节点#xff09;的数据复制到其他 Redis 服务器#xff08;从节点#xff09;的过程。以下是 Redis 主从同步的实现原理和配置方式。一、主从同步工作原理1. 全量同步#xff08;初…Redis 主从同步Replication是指将一台 Redis 服务器主节点的数据复制到其他 Redis 服务器从节点的过程。以下是 Redis 主从同步的实现原理和配置方式。一、主从同步工作原理1.全量同步初始同步当从节点第一次连接主节点或从节点与主节点断开连接时间过久时会触发全量同步从节点发送PSYNC ? -1命令请求全量同步。主节点执行BGSAVE生成 RDB 文件同时缓存新写入的命令。主节点将 RDB 文件发送给从节点从节点清空旧数据并加载 RDB。主节点将缓存的写命令Replication Buffer发送给从节点执行。2.增量同步断线重连当从节点短线重连后如果条件允许会进行增量同步从节点保存了主节点的runID和复制偏移量offset。从节点发送PSYNC runID offset命令。主节点判断offset是否在复制积压缓冲区Repl Backlog Buffer中如果在则发送缓冲区中从offset到最新的写命令。如果不在则触发全量同步。二、配置主从同步1.临时配置重启失效在从节点上执行命令# 设置主节点地址和端口 SLAVEOF master-ip master-port # 取消复制恢复为主节点 SLAVEOF NO ONE2.永久配置修改从节点的redis.conf# 指定主节点 replicaof master-ip master-port # 如果主节点有密码需配置 masterauth master-password # 从节点只读默认 replica-read-only yes三、关键配置参数参数说明repl-backlog-size复制积压缓冲区大小影响断线重连能否增量同步repl-timeout复制超时时间默认 60 秒min-replicas-to-write主节点至少写入的从节点数量replica-serve-stale-data从节点与主节点失联时是否响应旧数据四、主从同步流程示例# 1. 启动主节点默认端口 6379 redis-server # 2. 启动从节点并连接主节点 redis-server --port 6380 --replicaof 127.0.0.1 6379 # 3. 查看主从状态 redis-cli -p 6379 info replication # 主节点 redis-cli -p 6380 info replication # 从节点五、常见问题与优化1.主从数据不一致原因网络延迟、从节点负载过高。解决监控master_repl_offset和slave_repl_offset差值。2.全量同步频繁原因复制积压缓冲区大小不足或从节点频繁重启。解决增大repl-backlog-size避免频繁重启。3.主节点内存溢出原因BGSAVE生成 RDB 时内存翻倍。解决主节点内存预留一半或使用磁盘缓冲。六、相关命令# 查看复制信息 INFO replication # 手动触发全量同步从节点 REPLICAOF master-ip master-port # 提升从节点为主节点故障转移时 REPLICAOF NO ONE通过以上配置和原理Redis 主从同步可以实现数据的高可用备份和读写分离从节点处理读请求。