redis宕机如何解决?如果是项目上线的宕机呢?

摘要:
然后继续研究Redis宕机的解决方案!1.只需重新启动辅助Redis并连接主Redis。2.如果主Redis用于数据持久化,则可以直接连接到主Redis。只要实施了增量备份。2.如何解决主Redis宕机问题,首先确认是否进行持久化。如果主Redis不用于持久化,则重新启动主Redis将导致数据丢失。

我们先来了解一下  bridge网络模式

redis宕机如何解决?如果是项目上线的宕机呢?第1张

他会创建一个docker0桥,看完这个我们就会知道redis哨兵机制的端口了。

之后继续研究redis宕机的解决办法!

redis宕机如何解决?如果是项目上线的宕机呢?第2张

宕机: 服务器停止服务

如果只有一台redis, 肯定会造成数据丢失。

多台reids或者是Redis集群,服务器宕机还有办法。

  1.从的redis宕机怎么解决?

  配置主从复制的时候才配置从的redis, 从的会从主的redis中读取主的redis的操作日志,来达到主从复制。

    1.只要把从的redis重新启动,再和主的进行连接就可以

    2.如果从redis上面做数据的持久化,可以直接连接到主的上面,只要实现增量备份

  2.主的redis宕机怎么解决

  要先确认是否做持久化,若没有做持久化,重新启动主的redis就会造成数据丢失。

    1.先把从的redis升级为主的redis. 执行slave of one命令
    2.原来的主的可以重新启动,作为从的redis, 连接到主的redis上面做主从复制。
可以使用Redis 提供哨兵 机制来简化上面的操作。

redis宕机如何解决?如果是项目上线的宕机呢?第3张

redis宕机如何解决?如果是项目上线的宕机呢?第4张

 哨兵的配置:

1. 复制redis中sentinel.conf,根据情况进行配置

#当前Sentinel服务运行的端口
port 26379

#Sentinel服务运行时使用的临时文件夹
dir /tmp

#sentinel连接的主redis, 此redis连接端IP端口是172.17.0.1 6379
#将此redis判断为失效至少需要1个 Sentinel进程的同意, 只要同意Sentinel的数量不达标,自动failover就不会执行
sentinel monitor master 172.17.0.1 6379 1

#指定了在执行故障转移时,最多可以由多少个从Redis实例在同步新的主实例,在从Redis实例较多的情况下这个数字越小,同步的时间越长
#完成故障转移所需的时间就越长
sentinel parallel-syncs master 1

#如果未在18000ms内完成故障迁移,就默认未失败
sentinel failover-timeout master 180000

#redis的sentinel的日志
logfile "/var/log/sentinel_log.log"

可以使用哨兵搭建高可用服务器,哨兵模式还提供其他功能,比如监控、通知、为客户端提供配置等。

关于使用哨兵搭建高可用服务器,可以参考https://blog.csdn.net/shouhuzhezhishen/article/details/69221517来实现!

2018-09-05  20:30:11

免责声明:文章转载自《redis宕机如何解决?如果是项目上线的宕机呢?》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇实现Mac主机上的Docker容器中的图形界面显示(运行GUI应用)使用VS2008开发OPC客户端程序下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Redis实现之整数集合

整数集合 整数集合(insert)是集合键的底层实现之一,当一个集合只包含整数值元素,并且这个集合的元素数量不多时,Redis就会使用整数集合作为集合键的底层实现。举个栗子,如果我们创建一个只包含五个元素的集合键,并且集合中的所有元素都是整数值,那么这个集合键的底层实现就会是整数集合: 127.0.0.1:6379> SADD numbers 1 3...

Redis进阶实践之十一 Redis的Cluster集群搭建

一、引言本文档只对Redis的Cluster集群做简单的介绍,并没有对分布式系统的所涉及到的概念做深入的探讨。本文只是针对如何设置集群、测试和操作集群做了简述,并且从用户的角度描述了系统的行为,并不涉及Redis集群规范中所包含的细节。但是,本教程试图从最终用户的角度来解释有关Redis的Cluster集群的可用性和一致性的特点,并以简单易懂的方式讲解。请...

Redis——6.0集群安装部署

前言 redis集群化部署主要用于大型缓存架构,一般的小型架构,使用redis主从配置 + sentinel哨兵集群应付系统压力, 使用redis集群可以方便快捷地对集群进行动态扩容,动态的添加、删除节点,reshard、并带有自动故障恢复功能。 一般redis集群使用三主三从,并且尽量保证主服务器与从服务器不在同一台机器上,防止机器故障导致的集群瘫痪,每...

jmeter清理redis指定区缓存

1.下载jedis-2.2.1.jar,commons-pool-1.6.jar 两个jar包放到jmeter lib文件下,重启jmeter 2.添加Bean Shell Sampler,写入脚本,截图中为参数化了 import redis.clients.jedis.Jedis; import org.apache.commons.lang3.Str...

(一)Redis之简介和windows下安装radis

一、简介  1.1  关于nosql 介绍Redis之前,先了解下NoSQL (Not noly SQL)不仅仅是SQL, 属于非关系型数据库;Redis就属于非关系型数据库, 传统的Mysql ,oracle ,sql server 等 都是关系型数据库。   1.2  nosql的作用 为什么需要NoSQL,主要应对以下问题,传统关系型数据库力不从心...

redis Lua学习与坑

1.在写lua脚本往redis中添加zadd 有序集合的时候一直报 "value isnotavalid float"的错误,经过查询相关资料,最后发现,是顺序写反了。 相关代码 --[错误代码] redis.call('zadd',@TimeOrderKey,objRecord.ActivityID,@TimeScore);--[应该时间在前,value...