跳到主要内容

interview

interview

数据结构

  1. redis为什么是key,value的,为什么不支持sql?

Remote Dictionary Server

  1. 10万用户一年365天的登录情况如何用redis存储,并快速检索任意时间窗内的活跃用户?

bitmap

持久化

  1. AOF 和 RDB 的区别,优点

  2. redis的持久化开启了RDB和AOF下重启服务是如何加载的

1) AOF持久化开启且存在AOF文件时,优先加载AOF文件, 2) AOF关闭或者AOF文件不存在时,加载RDB文件, 3) 加载AOF/RDB文件成功后,Redis启动成功。 4) AOF/RDB文件存在错误时,Redis启动失败并打印错误信息

线程

  1. Redis 是单线程的吗?

目前所说的Redis单线程,指的是"其网络IO和键值对读写是由一个线程完成的",也就是说,Redis中只有网络请求模块和数据操作模块是单线程的。 而其他的如持久化存储模块、集群支撑模块等是多线程的。 所以说,Redis中并不是没有多线程模型的,早在Redis 4.0的时候就已经针对部分命令做了多线程化。

一致性

  1. Redis中如何解决缓存的一致性问题

看场景,读多写少

延时双删

跳表

  1. 时间复杂度:O(log n)

  2. redis中为啥不用红黑树而用跳表?

1 内存占用方面跳表比红黑树多,但是多的内存很有限 2 实现比红黑树简单 3 跟红黑树更方便的支持范围查询

分布式锁

  1. redlock

分布式限流

  1. Redis-Cell

面试题:

https://juejin.cn/post/7004681100228296717