ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

50道Redis高频面试题(13-20)

2022-08-30 18:00:48  阅读:211  来源: 互联网

标签:面试题 20 宕机 备份 Redis master slave 节点


十三、线上Redis持久化策略一般如何设置

如果对性能要求较高,在master最好不要做持久化,可以在某个slave开启aof备份数据,策略设置为每秒同步一次即可。

十四、一次线上事故,Redis主节点宕机导致数据全部丢失

如果你的Redis采用如下模式,就会发生数据丢失问题:

  • master-slave + 哨兵部署实例。
  • master没有开启数据持久化功能。
  • Redis进程使用supervisor管理,并配置为进程宕机,自动重启。
    如果此时master宕机,就会导致下面问题:
  • master宕机哨兵还未发起切换,此时master进程立即被supervisor自动拉起。
  • 但master 没有开启任何数据持久化,启动后是一个空实例。
  • 此时slave 为了与master保持一致,他会自动清空实例中的所有数据,slave也变成一个空实例。
    这个场景下master/slave的数据就全部丢失了。
    这时,业务应用在访问Redis时,发现缓存中没有任何数据,就会把请求全部打到后端数据库中,这还会进一步引发缓存雪崩。
    这种情况下,我们一般不应该给Redis主节点配置京城宕机马上自动重启策略,而是应该等哨兵吧某个slave切换为master之后,再重启之前宕机的节点让其变成slave。

十五、Redis如何做綫上备份

1、写crontab定时调度脚本,每小时都copy一份rdb或aof文件到另一台机器中,保留最近48小时的备份。
2、每天都保留一份当日的数据备份,到一个目录中,可以保留最近一个月的备份。
3、每次copy备份的时候,都把太旧的备份删除。

十六、Redis主从复制风暴是怎么回事

如果Redis主节点有很多从节点,在某一时刻如果所有从节点都同时连上主节点,那么主节点会同时吧内存快照RDB发给多个从节点,这样会导致Redis主节点压力过大,这就是所谓的Redis主从复制风暴问题。
这个问题我们对Redis主从架构做一些优化得以避免,比如可以做下面这种树形复制架构。

十七、Redis集群网络抖动导致频繁主从切换怎么处理

十八、Redis集群为什么至少需要三个master节点、为什么推荐奇数个节点

因为新的master的选举需要大于半数的集群master节点同意才能选举成功,如果只有两个master节点,当其中一个挂了,是达不到选举master条件的。
奇数个master节点可以在满足选举条件的基础上,节省一个节点,比如三个master和四个master相比,都挂了一个master,都可以选举,都挂了两个就都不能选举了。所以技术的master节点更多的是从节省机器资角度出发的。

十九、Redis集群支持批量操作命令嘛

对于类似mset、mget这样多个key的原生批操作命令,redis集群只支持所有key落在同一个solt的情况,入股分布在多个solt就会报错,如果在key前面加上{XXX},这样参数数据分片hash计算的时候只会是大括号里的值,这样就确保不同的key在同一个slot中。

mset {user}:1:name wqx {user}:1:age:18

二十、Redis主从切换分布式锁丢失的问题

标签:面试题,20,宕机,备份,Redis,master,slave,节点
来源: https://www.cnblogs.com/lovexiao/p/16640309.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有