0
点赞
收藏
分享

微信扫一扫

Redis进阶 | 06.Redis高可用策略

幸福的无所谓 2022-04-14 阅读 37
redis

文章目录

参考文章

redis系列之——高可用(主从、哨兵、集群)

1.主从模式(Master - Slave)

整体概述

一个主节点(Master),多个从节点(Slave),从节点下还可以有从节点

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qcaOGcSQ-1619832860463)(/var/folders/y1/tb_pgrms5dq8wq0ssjz1fgzh0000gn/T/abnerworks.Typora/image-20210501083342159.png)]

  • Master可读可写;
  • Slave只读,不断载入rdb文件,与Master保持同步。

优缺点

  • 优点:读写分离,负载均衡;

  • 缺点

    – Master如果崩溃,需要等待重启;

    – 所有主机存储的数据一致

2.哨兵模式(Sentinel)

哨兵模式是基于主从模式的

哨兵并不是Redis服务,是一个独立的进程,作用就是监控多个Redis结点的运行情况。

img

哨兵的作用

  • 向监视的所有Redis结点发送指令,监控其运行状态
  • 当检测到Master宕机,所有的哨兵通过选举机制选出一台Slave作为新的Master;
  • 选出新的Master之后,通过发布订阅模式通知其他的Slave,更换他们跟随的Master。

优缺点

  • 优点

    – 读写分离,负载均衡;

    – 当监视的Master挂掉,Sentinel会通过选举机制选出新的Master;

  • 缺点:所有节点存储的数据一致。

3.集群模式(Cluster)

将数据分片存储(下图表示数据分成三个分片),解决多台节点存储数据一致的问题。

每个分片内部可以是主从模式哨兵模式(下图表示一主一从)

image-20220411205110612

集群模式对数据的访问

在集群模式下,每个分片中存储的数据都是不一样的,

但仍然可以访问任意一个节点来尝试获取数据,Redis在判断key不在本节点时,会跳转到这个key对应的结点中去从而完成查询。

举报

相关推荐

0 条评论