Redis实战(15)Redis的三种集群方式

序言

 

Redis分片集群

1.搭建分片集群

2.散列插槽

3.集群伸缩

4.故障转移

5.访问分片集群

 

redis的哨兵模式基本已经可以实现高可用,读写分离 ,但是在这种模式下每台redis服务器都存储相同的数据,很浪费内存,所以在redis3.0上加入了cluster模式,实现的redis的分布式存储,也就是说每台redis节点上存储不同的内容。

Redis-Cluster采用无中心结构,它的特点如下:

所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽。

节点的fail是通过集群中超过半数的节点检测失效时才生效。

客户端与redis节点直连,不需要中间代理层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可。

工作方式:

在redis的每一个节点上,都有这么两个东西,一个是插槽(slot),它的的取值范围是:0-16383。还有一个就是cluster,可以理解为是一个集群管理的插件。

当我们的存取的key到达的时候,redis会根据crc16的算法得出一个结果,然后把结果对 16384 求余数,这样每个 key 都会对应一个编号在 0-16383 之间的哈希槽,通过这个值,去找到对应的插槽所对应的节点,

然后直接自动跳转到这个对应的节点上进行存取操作。

为了保证高可用,redis-cluster集群引入了主从模式,一个主节点对应一个或者多个从节点,当主节点宕机的时候,就会启用从节点。当其它主节点ping一个主节点A时,如果半数以上的主节点与A通信超时,那么认为主节点A宕机了。

如果主节点A和它的从节点A1都宕机了,那么该集群就无法再提供服务了。

redis-cluster集群搭建

https://www.cnblogs.com/cyleon/p/10936389.html

使用三台虚拟机创建6个节点,3个主节点,3个从节

 能聊聊redis cluster集群模式的原理吗

 

资料

https://www.cnblogs.com/51life/p/10233340.html

Redis 集群分片原理

https://www.bilibili.com/video/BV1Pu411Y7bq/?spm_id_from=333.337.search-card.all.click&vd_source=a56db24cb8cab4dd8153f9a519787c89

 

posted @ 2019-08-24 11:11  ~沐风  阅读(240)  评论(0编辑  收藏  举报