让一个Redis服务器成为另一个Redis的Slave
slaveeof 主Redis服务器ip 端口
此后slave只能读不能写了,并且slave的数据和master的相同。
只能写master。
此时主从服务器之间会存在不一致的情况。
AP模型 - CP模型
Redis 的主从复制默认情况下更倾向于 AP 模型,优先保证可用性和分区容忍性。
cp模型需要保证更多的强一致性。
当然redis可以通过C特定配置和命令,Redis 可以提供更高的一致性,但可能会牺牲部分可用性,特别是在网络分区的情况下。
为了实现可用性
(1)简单主从结构的心跳机制
(2)异步写入,写入不会立刻返回,也不会阻塞,而是将数据写入同步缓冲区中,等从服务器返回后,主服务器再给客户端返回写入成功。
尽管使用了 WAIT 命令或者配置了 min-slaves-to-write 参数,Redis 的复制机制仍然是异步的。主服务器在接收到客户端的写操作后,会将这些操作记录在复制积压缓冲区中,并异步地将操作发送给所有连接的从服务器。主服务器不会等待从服务器确认接收到数据就继续处理其他请求,这保证了系统的高响应性和性能。
(3)可以通过哨兵和集群来实现更强的高可用。
为了实现分区容忍
Redis可以通过配置哨兵,来进行分区后的选举。