redis的repl-ping-slave-period和repl-ping-replica-period
网上很多Redis方面的文章,会涉及到repl-ping-slave-period和repl-ping-replica-period这两个重要参数,从一些中文解释来看,意思差不多,即:SLAVE周期性的ping MASTER间隔,可直接理解成SLAVE -> MASTER间的心跳间隔(注意箭头方向)。
没有一篇文章同时提取这两者,总是分开出现在不同文章中。在官方的配置文件redis.conf,5.0版本之前的均使用repl-ping-slave-period,而从5.0开始变成了repl-ping-replica-period,也就是说这两个其实是同一个东西。实际上因为一些非技术原因,很多软件将slave改成了replica,Redis也同样如此,所以replica和slave是完全相同的。
为了兼容,5.0同时支持两种用法(其它配置项也同样命运,如:slaveof改成了replicaof):
} else if ((!strcasecmp(argv[0],"repl-ping-slave-period") || !strcasecmp(argv[0],"repl-ping-replica-period")) && argc == 2) { server.repl_ping_slave_period = atoi(argv[1]); if (server.repl_ping_slave_period <= 0) { err = "repl-ping-replica-period must be 1 or greater"; goto loaderr; } } |
常用命令变化,但5.0仍然兼容的配置项(实际上所有的slave都改成了replica,包括一些官方网站的文档,不过代码中的变量名保持未变,仍就为slave):
<5.0版本 |
>=5.0版本 |
repl-ping-slave-period |
repl-ping-replica-period |
slaveof |
replicaof |
slave-priority |
replica-priority |
slave-read-only |
replica-read-only |
slave-serve-stale-data |
replica-serve-stale-data |
cluster-slave-validity-factor |
cluster-replica-validity-factor |
配置项说明(注意命名包含cluster的为集群专有配置项):
默认值 |
单位 |
||
repl-ping-replica-period |
10 |
秒 |
定义心跳(PING)间隔。 |
repl-timeout |
60 |
秒 |
这个参数一定不能小于repl-ping-replica-period,可以考虑为repl-ping-replica-period的3倍或更大。定义多长时间内均PING不通时,判定心跳超时。对于redis集群,达到这个值并不会发生主从切换,主从何时切换由参数cluster-node-timeout控制,只有master状态为fail后,它的slaves才能发起选举。 |
cluster-node-timeout |
15000 |
毫秒 |
集群中的节点最大不可用时长,在这个时长内,不会被判定为fail。对于master节点,当不可用时长超过此值时,它slave在延迟至少0.5秒后会发起选举进行failover成为master。Redis集群的很多其它值与cluster-node-timeout有关。 |
cluster-slave-validity-factor |
10 |
如果设置为0,则slave总是尝试成为master,无论slave和master间的链接断开时间的长短。如果是一个大于0的值,则最大可断开时长为:(cluster-slave-validity-factor * cluster-node-timeout)。例如:当cluster-node-timeout值为5,cluster-slave-validity-factor值为10时,slave和master间的连接断开50秒内,slave不会尝试成为master。 |
repl-timeout和cluster-node-timeout的区别:
默认值 |
单位 |
||
repl-timeout |
60 |
秒 |
决定复制超时,并不能决定slave发起选举,也不决定master何时为fail |
cluster-node-timeout |
15000 |
毫秒 |
决定master何时为fail,在fail后,slave会发起选举 |
redis的repl-ping-slave-period和repl-ping-replica-period的更多相关文章
- 物理机与虚拟机IP互ping通,而互ping主机名不通
问题描述:虚拟机信息:VMware-workstation 10安装RHEL5.8操作系统.hostname:rhel201.com IP:192.168.1.201 物理机系统:windows 7主 ...
- Linux下可以ping ip地址但无法ping域名解决方法
分析:当前系统无法解决域名至ip地址故障. 步骤阅读 2 三:解决过程: 1.分析dns故障: 2.物理机可以ping 地址,但无法ping域名: 3.检查/etc/resolv.conf: 注: ( ...
- 解决:虚拟机能ping通主机,主机ping不通虚拟机
问题:虚拟机能ping通主机,主机ping不通虚拟机 解决方法: 1. 使用桥接. 2. 关闭防火墙.
- CentOS7设置静态IP以及windows下ping不通虚拟机、虚拟机ping不通外网解决方案
问题:CentOS7安装完成后默认使用的是动态IP,当你每次重新启动CentOS7后,它的IP地址都不一样.一般我们都是使用远程连接工具连接CentOS7进行操作,如果每次IP都不一样,系统启动后,每 ...
- 公司网络能ping通ip,不能ping域名
第一天去公司,就因为网络问题弄了大半天.只能ping通ip,不能ping域名.网上查了各种方式都不行,刷新dns缓存.说是什么域名解析问题.dns的问题.公司里好几个人都看了看不能解决.领导让重装系统 ...
- Redis的复制(Master/Slave)
是什么 : 也就是我们所说的主从复制,主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 能干嘛: 读写分离,容灾恢复 怎么玩: 1 ...
- Redis学习十:Redis的复制(Master/Slave)【重要】
一.是什么 官网 行话:也就是我们所说的主从复制,主机数据更新后根据配置和策略,自动同步到备机的master/slaver机制,Master以写为主,Slave以读为主 二.能干嘛 读写分离 容灾恢 ...
- 基于zabbix的Redis、Sentinel、Slave多实例自动发现监控
约定 保证whereis redis-cli 能够正确返回redis-cli程序的路径 保证 redis的配置文件在模板宏{$REDIS_SERVER_CONFIG_PATH}的路径,并且后缀名 为. ...
- redis高可用 - Master&Slave
Master&Slave也就是我们所说的主从复制,即主机数据更新后根据配置和策略,自动同步到备机的机制.其中Master以写为主,Slave以读为主. Master&Slave的作用主 ...
- redis配置master-slave模式
由于云服务器存在闪断现象,项目线上会存在基于redis的功能在闪断时段内出现异常,所以redis需要做master-slave模式.直接上代码: 原单机redis,RedisConnectionFac ...
随机推荐
- 亚像素Sub Pixel
亚像素Sub Pixel 评估图像处理算法时,通常会考虑是否具有亚像素精度. 亚像素概念的引出: 图像处理过程中,提高检测方法的精度一般有两种方式:一种是提高图像系统的光学放大倍数和CCD相机的分辨率 ...
- Oracle_高级功能(6) 分区
oracle分区表1.分区表: 当表中的数据量不断增大,查询数据的速度就会变慢,应用程序的性能就会下降,这时就应该考虑对表进行分区. 表进行分区后,逻辑上表仍然是一张完整的表,只是将表中的数据在物理上 ...
- 8Q - 献给杭电五十周年校庆的礼物
我不能参赛,就送给学校一个DOOM III球形大蛋糕吧.等一等,吃蛋糕之前先考大家一个问题:如果校长大人在蛋糕上切了N刀(校长刀法极好,每一刀都是一个绝对的平面),最多可以把这个球形蛋糕切成几块呢? ...
- H5C3动画
1 渐变 /* 渐变:不同颜色之间的柔和过渡 线性渐变:沿着某条直线发生渐变效果 注意:渐变准备来说是一张背景图 语法:linear-gradient */ background-image: lin ...
- mysql 8小时timeout问题
MySQL> show variables like '%timeout%'; +--------------------------+-------+ | Variable_name ...
- 最详细的Axure动态面板使用教程
1.打开[Axure]软件,在index文件上新建一个375*667大小的背景矩形并绘制页面. 具体如图所示. 2.在banner的位置上新建一个[动态面板],双击动态面板在其中新建state1.st ...
- xml配置sql语句
- Netty 源码 ChannelHandler(四)编解码技术
Netty 源码 ChannelHandler(四)编解码技术 Netty 系列目录(https://www.cnblogs.com/binarylei/p/10117436.html) 一.拆包与粘 ...
- 爬虫初窥day3:BeautifulSoup
信息提取 1.通过Tag对象的属性和方法 #!/usr/bin/python # -*- coding: utf- -*- from urllib.request import urlopen fro ...
- rabbitmq安装.教程
https://www.cnblogs.com/ericli-ericli/p/5902270.html (rabbitmq安装)https://www.cnblogs.com/iiwen/p/538 ...