当前位置:   article > 正文

Redis之哨兵与集群_redis集群和哨兵各自适用场景

redis集群和哨兵各自适用场景

目录

一、单点服务器带来的问题

二、Redis集群

1. Redis集群概述

2. Redis集群的优点

三、Redis集群模式

1.Redis集群模式分类

2.主从复制

3. 主从复制流程

四、哨兵

1. 哨兵结构

2. 哨兵模式的功能

3. 哨兵的核心知识

4. 哨兵作用

5. 哨兵模式下的故障迁移

五、Cluster集群

1. Redis-Cluster集群的作用

2. Redis集群的数据分片

3. Redis集群的主从复制模型

4. Redis Cluster的工作原理

六、主从复制实验

七、哨兵部署

八、搭建Redis 群集模式


一、单点服务器带来的问题

  • 单点故障,服务不可用
  • 无法处理大量的并发数据
  • 数据丢失----大灾难
  • 开启多Redis进程
  • Redis默认单进程
  • 开启多进程导致CPU压力过大
  • 对于服务器(纵向)消耗服务器硬件性能CPU

解决方法

搭建Redis集群

二、Redis集群

1. Redis集群概述

  • Redis集群是一个提供在多个Redis间节点间共享数据的程序集
  • Redis集群并不支持处理多个keys的命令,因为这需要在不同节点间移动数据,从而达不到像Redis那样的性能,在高负载的情况下可能会导致不可预料的错误
  • Redis集群通过分区来提供一定程度的可用性,在实际环境中当某个节点宕机或者不可达的情况下可继续处理命令

2. Redis集群的优点

  • 自动分割数据到不同的节点上
  • 整个句群的部分节点失败或者不可达的情况下能够继续处理命令

三、Redis集群模式

1.Redis集群模式分类

主从同步、复制

主从复制是高可用Redis的基础,哨兵和集群都是在主从复制基础上实现高可用的,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复

缺陷

故障恢复无法自动化,写操作无法负载均衡,存储能力受到单机的限制

哨兵模式

在主从复制的基础上,哨兵实现了自动化的故障修复。

缺陷

写操作无法负载均衡;存储能力收到单机的限制;哨兵无法对从节点进行自动故障转移,在读写分离场景下,从节点故障会导致读服务不可用,需要对从节点做额外的监控、切换操作

cluster集群

通过集群,Redis解决了写操作无法负载均衡,以及存储能力收到单机限制的问题,实现了较为完善的高可用方案

2.主从复制

1)主从复制是高可用Redis的基础,哨兵和集群都是在主从复制基础上实现高可用的,主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复

缺陷

故障恢复无法自动化,写操作无法负载均衡,存储能力受到单机的限制

2)通过持久化功能,redis保证了即使在服务器重启的情况下也不会丢失(或少量丢失)数据,因为持久化会把内存中的数据保存到硬盘上,重启会从硬盘上加载数据,但是由于数据是存储在一台服务器上的,如果这台服务器出现硬盘故障等问题,也会导致数据丢失。为了避免单点故障,通常的做法是将数据库复制多个副本以部署在不同的服务器上,这样即使有一台服务器出现故障,其他服务器依然可以继续提供服务,为此,redis提供了复制(replication)功能,可以实现当一台数据库中的数据更新后,自动将更新的数据同步到其他数据库上。

3)在复制的概念中,数据库分为两类,一类是主数据库(master),另一类是从数据(slave)。主数据可以进行读写操作,当写操做导致数据变化时自动把数据同步给从数据库,而从数据库一般是只读的,并接收主数据同步过来的数据。一个主数据库可以拥有多个从数据库,而一个从数据库只能拥有一个主数据库

主从复制的作用:

数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余的方式

故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复:实际上是一种服务的冗余

负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务,分担服务器负载:尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务的并发量

高可用基石&

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/695475
推荐阅读
相关标签
  

闽ICP备14008679号