Redis面试

二次信任 提交于 2020-02-15 05:19:41

原理

  • Redis数据类型及实现
  • 过期时间实现
  • 跳表
  • Redis直接操作是什么???
  • 持久化
  • 事务
  • Redis为什么这么快
  1. 直接操作内存
  2. 底层使用C语言并重写了一些C语言数据结构,如String,使得一些API比原生的C要快,如获得String长度 https://www.cnblogs.com/AshOfTime/p/10616044.html
  3. 单线程,避免了线程切换的代价
  4. 单线程,没有并发问题,避免了锁带来的性能开销
  5. IO多路复用,单线程可以监控多个IO https://zhuanlan.zhihu.com/p/24252862

应用

  • 保证Redis缓存和数据库一致性
  • 路由
  • 单线程

集群

  • (哈希槽,主从复制,节点选举,MOVE和ASK等等)
  • 主从复制
  1. 2.8之前,断线出发全量复制
  2.  2.8后,命令传播阶段增量复制
  3.  主从节点 从从节点
  4. 异步性
  • 如何保证高可用性
  • 分布式锁
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!