采用多主多从或者树状结构去实现同步。一主多从(哨兵)时,主的同步压力很大,要给其他从发送同步的数据命令,主宕机了就无法写操作。因此要做多主多从(cluster集群),是个树状形式。哨兵是一主多从,是中心化思想集群,而多主多从是去中心化。
15.redis中如何做高可用?哨兵机制的作用?
高可用??主从同步中如果主宕机了,那么就要人为的从从redis中选一个节点出来做主节点,效率低,就引入哨兵机制。哨兵解决的问题就是当主节点宕机情况下,自动的从剩余的节点选出一个新的主节点。哨兵也需要集群部署(有几个redis就有几个哨兵),因为要投票保证公平性。哨兵如何确定主宕机了?配置文件里面配置有几个哨兵确认主宕机之后,才会认为master宕机了,然后从新选。
16.哨兵机制的优缺点?
缺陷:哨兵安装了多个;只能有一个主节点,不能存在多个;这种集群缺陷是数据可能产生冗余(主和从的数据保持一致,非常浪费资源)。因此引入redis的cluster集群
17.redis的cluster集群原理?
cluster集群是分片集群。预先会分配16384个卡槽,会根据算法?对key计算卡槽对应在哪个服务器位置,然后直接做个set操作。优点是:实现快速的扩容和缩容,而且是去中心化的,可以存在多个master节点。