虚惊一场,差点挂在美团三面,罪魁祸首居然竟是“Redis”?
在找工作的过程中,对于 Redis 技术知识的掌握已经成为必须的技能。美团面试常常就会被问到 Redis 相关知识,而这次我就差点挂在了美团 3 面,面试官连问我以下几个 Redis 的问题,然后就卡壳了...
-
redis 了解吗?Redis key 的过期策略 Redis 了解吗?你说说怎么用 redis 实现分布式锁?
-
Redis 常用数据结构及底层数据结构实现
-
如何解决 Redis 的并发竞争 Key 问题
-
如何保证缓存与数据库双写时的数据一致性?
-
Redis 持久化有哪几种方式,怎么选?
-
Redis 的 zset 怎么实现的?
-
Redis 主从同步是怎样的过程?
-
... ...(剩下的不太记得了...为此面试完回来针 Redis 专门做了一个大总结)
01 Redis 面试问题常见划分(6 个部分,附带完整的答案解析)
第一部分:Redis 的概念理解第二部分:Redis 数据结构与指令第三部分:Redis 高并发处理策略第四部分:Redis 集群结构以及设计理念第五部分:Redis 缓存管理与持久化机制第六部分:Redis 应用场景设计
注意:前面例举了所有的问题,在先不看解析的条件下,可先自行试水。。解析在最后。。笔记是全程手写出来的,希望大家拿到笔记后别丢进收藏夹吃灰!
1.1 Redis 面试问题:第一部分:Redis 的概念理解
-
什么是 Redis?
-
Redis 的特点有哪些?
-
Memcache 与 Redis 的区别都有哪些?
-
Redis 相比 Memcached 有哪些优势?
-
如何实现本地缓存?请描述一下你知道的方式
-
Redis 通讯协议是什么?有什么特点?
1.2 Redis 面试问题:第二部分:Redis 数据结构与指令
-
Redis 支持的数据类型
-
Redis 常用的命令有哪些?
-
一个字符串类型的值能存储最大容量是多少?
-
Redis 各个数据类型最大存储量分别是多少?
-
请介绍一下 Redis 的数据类型 SortedSet(zset)以及底层实现机制?
-
Redis 事务相关命令有哪些?
-
什么是 Redis 事务?原理是什么?
-
Redis 事务的注意点有哪些?
-
Redis 为什么不支持回滚?
-
请介绍一下 Redis 的 Pipeline(管道),以及使用场景
-
请说明一下 Redis 的批量命令与 Pipeline 有什么不同?
-
请介绍一下 Redis 的发布订阅功能
-
Redis 的链表数据结构的特征有哪些?
-
请介绍一下 Redis 的 String 类型底层实现?
-
Redis 的 String 类型使用 SSD 方式实现的好处?
-
设置键的生存时间和过期时间有哪些命令?
1.3 Redis 面试问题:第二部分:第三部分:Redis 高并发处理策略
-
为什么 Redis 需要把所有数据放到内存中?
-
Redis 是单线程的吗?
-
Redis 为什么设计成单线程的?
-
什么是缓存穿透?怎么解决?
</