一、面试注重三点:

  1.为什么使用Redis?

    1.性能高,读写性能在10万/s,并发量大,支持丰富的数据类型。

      1.基于内存,多路复用,单线程,C语言。

    2.缓解MySQL数据库压力。

    3.可以持久化,rdb和aof。

    4.搭建Redis集群,提高了可用性,可扩展性。

  2.Redis用来做什么?

    1.性能高,用作缓存

    2.原子性操作,用来做分布式锁。

    3.计数器,实时性好。

    4.排序,

    5.rocketMq消息幂等,防止重复消费。

    6.缓存登陆态,token

  3.Redis底层原理?

    1.结构

    2.aof和rdb

    3.集群

    4.过期策略

  4.Redis优化和注意的问题?

    1.大key操作,批量操作

    2.缓存雪崩,击穿,穿透

    3.

  

更好的面试总结:https://zhuanlan.zhihu.com/p/91539644

1.Redis 和 Memcached 有啥区别,为啥选择用Redis作为你们的缓存中间件?

2.redis是单线程,为什么那么快?

3.Redis有几种基础数据类型么?

说一下他们的特性,还有分别的使用场景么?

4、那他是单线程的,我们现在服务器都是多核的,那不是很浪费?

7、既然提到了单机会有瓶颈,那你们是怎么解决这个瓶颈的?

8、以及Redis是怎么进行持久化的?

7、如何解决数据库何缓存一致性问题?

8、为什么是删除缓存,而不是更新缓存?

9、Redis 的过期策略和内存淘汰机制

10、Redis 的线程模型了解么?

11、什么是缓存雪崩,缓存击穿,缓存穿透?如何处理?

12Redis 集群分片原理