redis高可用和集群能同时使用吗的简单介绍

玩转Redis的高可用(主从、哨兵、集群)1、Redis的哨兵机制就是解决主从复制存在缺陷(选举问题),解决问题保证我们的Redis高可用,实现自动化故障发现与故障转移 。要使用哨兵机制,除了启动Redis服务以外,还要启动哨兵服务来进行监控 , 会介绍详细步骤 。
2、哨兵模式解决了故障不能自动恢复的问题,但仍存在的问题是:Redis较难支持在线扩容,对于集群,容量达到上限时在线 扩容会变得很复杂。
3、原理:当主节点出现故障时,由Redis Sentinel自动完成故障发现和转移,并通知应用方,实现高可用性 。
【redis高可用和集群能同时使用吗的简单介绍】4、redis哨兵和集群不能同时使用,Redis哨兵和集群是两种不同的Redis高可用方案 。
5、redis高可用:如果你做主从架构部署 , 其实就是加上哨兵就可以了,就可以实现,任何一个实例宕机,自动会进行主备切换 。
6、哨兵机制是用来解决主从同步Master宕机后的 动态自动主从切换 问题 。主要有以下作用 试想如果用来保障redis集群高可用的哨兵是单机的,然后哨兵挂了 , redis也挂了,这tm是何等 卧槽? 所以哨兵也是集群的 , 所有操作需要进行投票决定 。
负载均衡,分布式,集群的理解,多台服务器代码如何同步?分布式是指将不同的业务分布在不同的地方 , 集群指的是将几台服务器集中在一起,实现同一业务 。
负载均衡是一种方法,常用的是nginx反向代理,其实负载均衡是可以理解为搭建集群的一部分 , 属于集群服务器的前置系统 。
多台服务器协同工作,每台服务器叫做集群的一个“节点”,每个节点都提供相同的服务 。
而集群指的是将几台服务器集中在一起,实现同一业务 。分布式中的每一个节点,都可以做集群 。而集群并不一定就是分布式的 。
redis集群的插槽问什么是16384个普通心跳数据包携带节点的完整配置,该配置可以用旧配置以幂等方式替换,以便更新旧配置 。这意味着它们包含原始形式的节点的槽配置,16k的槽配置需要使用2k内存空间 , 但是使用65k槽将使用8k的内存空间 。
那么 , 对于节点数在1000以内的redis cluster集群,16384个槽位够用了 。没有必要拓展到65536个 。
redis集群共有2^14次方16384个hash槽,当操作数据时 , 使用CRC16算法计算key的hash值,然后与16384取模从而确定该数据是属于哪一个slot槽的 。

    推荐阅读