我们将主服务器称为master,从服务器称为slave。网络正常时master会通过发送命令保持对slave更新,更新包括客户端的写入,key的过期或被逐出等网络异常,master与slave连接断开一段时间,slave重连上master后会尝试部分重同步,重新获取连接断开期间丢失的命令。主从模式下,master负责处理写,slave负责读。主从模式避免了redis单点风险。当master挂掉,从slave中选举新的机器作为master保证系统可用。连接建立完毕后通过ping进行心跳检测,若master正常,则返回响应。如果出现故障收不到响应,那么slave会重新尝试连接master。slave同时向master发送自己复制缓冲区的偏移量。master根据这些请求,判断是否向slave同步新产生的命令。slave收到同步的命令后执行,最终与master保持同步。

Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作

Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作

Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作

Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作

Java使用Lettuce客户端在Redis在主从复制模式下命令执行的操作