栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

interview redis

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

interview redis

interview redis list
  • 文件事件处理器
  • 数据类型及应用
  • 持久化
  • 过期键策略
  • 数据淘汰
  • 主从模式
  • 哨兵模式
  • 集群模式
  • 面试题
1. 文件事件处理器
  • socket
  • IO多路复用程序
  • 队列+文件事件分派器
  • 事件处理器:命令请求处理器、命令回复处理器、命令应答处理器、…
6.0 IO多线程

IO操作多线程,命令执行仍为单线程

2. 数据类型及应用
  • 基本类型:string、hash、list、set、zset
  • hyperloglog
  • geo
  • bitmap
  • bloom filter
应用

string:点赞

hash:

list:关注列表、粉丝列表、最新消息

set:共同关注或喜好、交并差集

zset:排行榜

3. 持久化
  • RDB:快照、如何触发(save, bgsave, 自动)
  • AOF:写追加、appendsync策略、AOF文件重写
生产配置

接受数据完全丢弃,不开启;

单机数据一定丢弃,开启RDB或AOF

主从模式,主不开启,从开启RDB或AOF,(M/S)定时备份

4. 过期键删除策略
  • 定时删除

  • 惰性删除

  • 定期删除

采用:定期删除+惰性删除

5. 内存淘汰策略
  • no-eviction
  • allkeys-lru
  • allkeys-random
  • volatile-lru
  • volatile-random
  • volatile-ttl
6. 主从模式
  • 结构:一主一从、一主多从、主从从链式

  • 作用:读写分离

  • 原理:

    • 建立连接

    • 数据同步:

      psync?-1或psync

    • 命令传播

      复制偏移量和复制积压缓冲区

7. 哨兵模式
  • 架构:sentinel+master+slave

  • 作用:主节点的自动故障转移

  • 实现机制:

    • 定时任务
    • 主观下线
    • 客观下线
    • 选举领导者哨兵节点
    • 自动故障转移
    1、每个哨兵节点,维持3个定时任务,功能如下
    	1.1 通过向主节点发送info命令获取最新的主从结构
    	1.2 通过发布订阅功能,获取其他哨兵节点的信息
    	1.3 通过向其他节点发送ping命令进行心跳检测,判断是否下线
    2、主观下线:心跳检测定时任务中,其他节点超时无回复,哨兵节点会将其主观下线
    3、客观下线:哨兵进行主观下线后,通过sentinel is-master-down-by-addr命令询问其他哨兵节点该master节点的状态,如果判断master下线的哨兵数量达到一定数值,认为客观下线
    	补充:slave主观下线后,无后续操作
    4、选举领导者哨兵节点:哨兵节点间,采用Raft,选举出领导者,负责后续故障转移
    5、自动故障转移:
    	5.1 选择新master
    	5.2 更新主从状态
    	5.3 将已经下线的master设置新master的slave
    
生产推荐
  • 哨兵节点数量为奇数
8. 集群模式
  • 作用:数据分区;高可用

  • 原理

    • 数据分区方案:带虚拟节点、一致性、哈希分区

      槽 slot 16384个

    • 节点通信机制:两个端口、Gossip协议、消息/命令

    • 故障转移:类似哨兵模式

9. 面试题

keys和scan:keys阻塞,scan不阻塞,但有概率重复,需要客户端去重

生产部署:

  • 哨兵:3+1+3
  • 集群:3*(1+1)

主从节点脑裂:

  • 问题:旧master,重新连接上新master,同步数据,造成数据丢失

  • 解决:master最少slave数量配置;slave连接到master的最大延迟时间

    min-replicas-to-write 3
    min-replicas-max-lag 10
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/918711.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号