Redis主从模式的常用类型

Stella981
• 阅读 792

本文介绍Redis主从模式的常用类型。

Redis的可靠性主要有主从模式和集群模式。对于主从模式而言,Redis有以下方案:

  • Sentinel方案;
  • Keepalived方案。

Sentinel方案

作为Redis主推的官方方案,主要的实现原理是通过引入哨兵sentinel节点,来投标决定master节点故障后,哪个slave节点会被选举接管故障的master节点。

Redis主从模式的常用类型

Sentinel节点会周期性的向Redis节点发送心跳消息(10s一次向master节点发送心跳,1s一次向从节点和sentinel集群的其他salve节点发送心跳,2s一次广播当前的master信息和sentinel集群的信息)。

当Sentinel集群检测到Redis的Master节点故障,就需要通过在Sentinel内投票,如果投票通过,则将目标的节点执行failover切换。

优点:官方推荐的方案;

缺点:Sentinel1已经废弃,Sentinel2目前在rewrite阶段,有稳定版本;Sentinel集群至少需要部署3个实例。这样就不利于sentinel部署了,如果我们规定只有两个Redis节点,Sentinel节点就不能部署在Redis节点上,必须找其他的节点来部署,这样部署起来就比较

麻烦一些。

Keepalived方案

利用Linux官方的Keepalived软件做load balance和HA。主要原理是Keepalived会监控Master和Slaver节点。当主节点故障时,会利用VRRP协议,将IP切换到Slave节点。

Redis主从模式的常用类型

优点:非官方方案,但是使用比较广泛,有比较成熟的redis_check.sh, redis_master.sh, redis_backup.sh, redis_fault.sh, redis_stop.sh脚本;Keepalived可以随Redis部署,不需要额外的节点,组网比较简单。

缺点:安装部署需要引入一个新的软件Keepalived。

参考引用

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Redis集群介绍及测试思路
Redis集群一般有四种方式,分别为:主从复制、哨兵模式、Cluster以及各大厂的集群方案。在3.0版本之前只支持单实例模式,3.0之后支持了集群方式。在3.0之前各大厂为了解决单实例Redis的存储瓶颈问题各自推出了自己的集群方案,其核心思想就是数据分片,主要有客户端分片、代理分片、服务端分片。这里咱们只介绍前三种方式:主从、哨兵、Cluster。
Peter20 Peter20
3年前
Redis集群详解
Redis集群详解Redis有三种集群模式,分别是:主从模式Sentinel模式Cluster模式三种集群模式各有特点,关于Redis介绍可以参考这里:Redis官网:https://redis.io/,最新版本5.0.4主从模式主从模式介绍主从模式是三种模式中最简单的,在主从复制中,数据库分为两类:主数据库(master)和从数据库(sl
Stella981 Stella981
3年前
Redis低成本高可用方案设计
关于Redis高可用方案,看到较多的是keepalived、zookeeper方案。keepalived是主备模式,意味着总有一台浪费着。zookeeper工作量成本偏高。本文主要介绍下使用官方sentinel做redis高可用方案的设计。阅读目录:1.RedisSentinel2.故障转移消息接收的3种方式3.整体流程
Stella981 Stella981
3年前
Nginx + lua +[memcached,redis]
精品案例1、Nginxluamemcached,redis实现网站灰度发布2、分库分表/基于Leaf组件实现的全球唯一ID(非UUID)3、Redis独立数据监控,实现订单超时操作/MQ死信操作SelectPollEpollReactor模型4、分布式任务调试Quartz应用
Stella981 Stella981
3年前
Redis Sentinel 哨兵模式
RedisSentinel哨兵模式Sentinel介绍Redis的主从模式下,主节点一旦发生故障不能提供服务,需要人工干预,将从节点晋升为主节点,同时还需要修改客户端配置。对于很多应用场景这种方式无法接受。Sentinel(哨兵)架构解决了redis主从人工干预的问题。Redis
Stella981 Stella981
3年前
Redis 单机模式,主从模式,哨兵模式(sentinel),集群模式(cluster),第三方模式优缺点分析
Redis的几种常见使用方式包括:单机模式主从模式哨兵模式(sentinel)集群模式(cluster)第三方模式单机模式Redis单副本,采用单个Redis节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景。优点:
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这