redis中的宕机什么意思


本文摘自PHP中文网,作者(*-*)浩,侵删。

宕机是计算机术语,口语里面我们简单的把停掉机器叫做down机,转换为汉字是“宕机”,但很多人都叫做“当机”/“死机”,虽然不规范但却流行。

宕机,指操作系统无法从一个严重系统错误中恢复过来,或系统硬件层面出问题,以致系统长时间无响应,而不得不重新启动计算机的现象。它属于电脑运作的一种正常现象,任何电脑都会出现这种情况。

redis集群是有很多个redis一起工作,那么就需要这个集群不是那么容易挂掉,所以呢,理论上就应该给集群中的每个节点至少一个备用的redis服务。这个备用的redis称为从节点(slave)。(推荐学习:Redis视频教程)

首先要说的是,每一个节点都存有这个集群所有主节点以及从节点的信息。它们之间通过互相的ping-pong判断是否节点可以连接上。如果有一半以上的节点去ping一个节点的时候没有回应,集群就认为这个节点宕机了,然后去连接它的备用节点。

在主从模式下宕机要分为区分来看:

slave从redis宕机

在Redis中从库重新启动后会自动加入到主从架构中,自动完成同步数据;
如果从数据库实现了持久化,只要重新假如到主从架构中会实现增量同步。

Master 宕机

假如主从都没数据持久化,此时千万不要立马重启服务,否则可能会造成数据丢失,正确的操作如下:

- 在slave数据上执行SLAVEOF ON ONE,来断开主从关系并把slave升级为主库

- 此时重新启动主数据库,执行SLAVEOF,把它设置为从库,自动备份数据。

集群进入fail状态的必要条件

某个主节点和所有从节点全部挂掉,我们集群就进入faill状态。

如果集群超过半数以上master挂掉,无论是否有slave,集群进入fail状态.

如果集群任意master挂掉,且当前master没有slave.集群进入fail状态

投票过程是集群中所有master参与,如果半数以上master节点与master节点通信超时(cluster-node-timeout),认为当前master节点挂掉。

选举的依据依次是:网络连接正常->5秒内回复过INFO命令->10*down-after-milliseconds内与主连接过的->从服务器优先级->复制偏移量->运行id较小的。选出之后通过slaveif no ont将该从服务器升为新主服务器。

通过slaveof ip port命令让其他从服务器复制该信主服务器。

最后当旧主重新连接后将其变为新主的从服务器。注意如果客户端与旧主服务器分隔在一起,写入的数据在恢复后由于旧主会复制新主的数据会造成数据丢失。

更多Redis相关技术文章,请访问Redis数据库使用入门教程栏目进行学习!

以上就是redis中的宕机什么意思的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

连接Redis集群报错:(error) moved的解决方法

为什么需要Redis

Redis缓存穿透怎么解决

Redis注册成window服务的方法介绍

Redis可视化工具哪个好

Redis为什么默认建立16个数据库

Redis的分区实现

Redis怎么用

Redis并发问题解决

laradock 如何添加 Redis 配置

更多相关阅读请进入《Redis》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...