美文网首页
redis主从复制以及集群

redis主从复制以及集群

作者: Aaron_Swartz | 来源:发表于2019-08-29 17:29 被阅读0次

前言:面试中经常会遇到的问题,小结一下

主从复制的好处
1 避免单点故障,redis挂掉以后,redis插槽有空档,导致redis不可用
2 构建读写分离架构,满足读写分离的场景。(数据库一般80%都是读请求,20%的写请求)

redis主从同步的过程

1 当从库和主库建立主从关系后,从库会向主库发送PSYNC命令
2 主库接受到PSYNC命令后,开始在后台保存快照,并缓存些命令到临时缓冲区中。
3 当RDB快照完成后,redis会将RDB文件和这段时间缓存的写命令通过网络IO发送给从机器
4 redis 接收到后会载入快照文件,并且执行收到的写命令。
5 之后每当主redis接收到写命令之后就将写命令发送给从redis,从redis执行写命令,保持主从的一致性。
注意:数据是持久化到磁盘,从库redis加载数据,完成数据同步,中间涉及到磁盘IO
常见问题: 服务宕机处理手段
如果是从库redis 宕机,直接重启,会自动加入主从架构,并自动通过增量复制完成数据同步
如果是主库宕机:选择一个从库断掉主从关系,并将自身提升为主库提供服务 : SLAVEOF NO ONE。重启挂掉的服务,通过 SLAVEOF ip port 将其设置为其他从库的从库,保持主从架构。

哨兵机制

在上边的逻辑中,主服务宕机,需要运维人手动重启。redis提供哨兵机制,可以自动实现重启。
哨兵的主要作用:监控redis服务是否正常运行,如果主reids宕机,在从库中选取 leader当新的主库,如果是从库宕机,直接重启从库机器,并且 slave of master
单个哨兵的监控:只监控 master ,自动发现master 下的 slave
多个哨兵的监控:在监控master的同时,还会互相监督;

redis集群

redis集群主要是用来解决redis的高并发问题的,redis集群将16384个插槽分配到集群中的机器中,当有请求来的时候,首先会根据请求的key值计算hash值,再看映射到哪台集群上,集群上的每台机器都保存着插槽分配信息和集群中有效机器的ip port.
集群未解决的问题
1、 集群中的每个节点都会定期的向其它节点发送PING命令,并且通过有没有收到回复判断目标节点是否下线;
2、 集群中每一秒就会随机选择5个节点,然后选择其中最久没有响应的节点放PING命令;
3、 如果一定时间内目标节点都没有响应,那么该节点就认为目标节点疑似下线;
4、 当集群中的节点超过半数认为该目标节点疑似下线,那么该节点就会被标记为下线(fail);
5、 当集群中的任何一个节点下线,就会导致插槽区有空档,不完整,那么该集群将不可用;
6、 如何解决上述问题?
a) 在Redis集群中可以使用主从模式实现某一个节点的高可用
b) 当该节点(master)宕机后,集群会将该节点的从数据库(slave)转变为(master)继续完成集群服务;
集群下的主从复制”,3台master搭建集群,分别为每一台master 做一个主从架构。这应该就是集群和主从同时保证高并发和高可用的架构

相关文章

  • Redis的高可用

    Redis主从复制 什么是主从复制 Redis有三种集群方案,主从复制,哨兵,cluster集群,主从复制是指将一...

  • redis的三种集群方式

    redis的三种集群方式 redis有三种集群方式:主从复制,哨兵模式和集群。 1.主从复制 主从复制原理: 从服...

  • 【5分钟背八股】redis集群方案有哪些?

    常见集群分类 主从复制集群 分片集群 redis有那些: 主从复制集群,手动切换 带有哨兵的HA的主从复制集群 客...

  • Redis从入门到精通6:Redis的集群

    本节来介绍Redis的集群,也就是Redis的主从复制。 1.Redis集群 在Redis的实际业务中,读的量要远...

  • 基于redis分布式缓存实现

    在网上找了些redis搭建集群的资料,分享给大家,可以仔细看看,了解redis主从复制的逻辑,以及如何构建redi...

  • Java中高级核心知识全面解析——Redis(集群【概述{主从复

    一、[集群]入门实践教程 1.Redis 集群概述 1)Redis 主从复制 到目前为止,我们所学习的 Redis...

  • redis主从复制以及集群

    前言:面试中经常会遇到的问题,小结一下 主从复制的好处1 避免单点故障,redis挂掉以后,redis插槽有空档,...

  • redis集群

    本章要点 Redis主从 Redis哨兵 Redis集群 主从复制原理 1. Redis 主从 比较简单在redi...

  • redis主从复制和哨兵机制

    主从复制 Redis主从复制作用:数据备份,读写分离,集群,高可用,宕机容错机制Redis只支持一主(有继承关系)...

  • Redis 分布式主从架构

    Redis 集群设计的演变Redis 从最早的集群设计,演变到现在,历经了三种集群状态:(1)主从复制;(2)哨兵...

网友评论

      本文标题:redis主从复制以及集群

      本文链接:https://www.haomeiwen.com/subject/jugiectx.html