2、哨兵模式
除了redisl master、redis slave,我们有另外的一个节点,叫redis Sentinel啊。redis Sentinel会去同时连接master和slave啊。这个sentinel,它是同时和我们对应的master和slave,保持了一个心跳的连接。这样的话它可以非常快速的监听住master是不是还活着,是不是slave还活着啊。
我的redis client在启动的时候,他第一个找的是sentinel,也就是第一步,他在启动的时候会需要去寻址,其实就是我们的redis client,从redis Sentinel当中去获取一个地址。这个地址是告诉我的redis client,我的master跟slave的节点分别是什么啊
一旦我们对应的master发生了一个故障,我们的redis Sentinel和我们的master之间,对应的这个心跳协议产生了一些超时的问题,slave还活着,那我们的redis Sentinel,就可以去更改自己内部的配置将这个master和slave产生切主,因为我们的redis client跟redis Sentinel之间是有长连接心跳关系的。我们对应的这个redis Sentinel会反向的推之,推送给我们对应的redis client告诉他说我已经切主了啊,当我们对应的这个redis master恢复过来以后,那它也会被Sentinel感知到,因为它对应内部配置的,这样和Sentinel地址两边是互相感知的
3、分片部署(多主多从)
4、集群模式(不再区分master和slave)
无法跨机房