面试官这Redis夺命连环12问,谁顶得住?

简介: 面试官这夺命连环12问,谁顶得住?面试官: 同学,我看你每个项目中都用到了Redis,你能说说你是怎样使用Redis的吗?

面试官这夺命连环12问,谁顶得住?

面试官: 同学,我看你每个项目中都用到了Redis,你能说说你是怎样使用Redis的吗?


小A同学: 主要用来做缓存,分布式Session, 阅读量/点赞数统计


面试官: 嗯,好的,Redis如何做持久化的?


小A同学: bgsave做全量持久化到RDB二进制文件中,aof做增量持久化,存储的是文本协议数据。


面试官:它们的优缺点呢?


小A同学:rdb二进制文件启动加载速度可以更快,aof要重放命令,所以速度比较慢

面试官: Redis持久化期间,主进程还能对外提供服务吗?


小A同学: 能


面试官:那Redis如何处理新写入的数据呢,这个数据也会直接进行持久化吗?


小A同学:。。。这个可能吧!


面试官: Reids可以设置最大内存大小,如果数据达到了内存最大限制,Redis如何处理呢?


小A同学:可以配置淘汰策略 LRU 或者 LFU 淘汰策略。


面试官:Redis 的LRU算法实现原理,可以讲讲吗?


小A同学:这个不太清楚。

面试官: Redis 核心数据类型有哪些?


小A同学: string, hash, list, set, zset.


面试官:存储数据用 string 类型 和 hash 类型,你是如何选择的呢?


小A同学:string 对大量字段的对象中的某个数据进行获取,需要进行整体的数据获取,在客户端完成反序列化,而hash可以获取指定字段获取数据。所以根据访问需求来选择。


面试官:还有其他的考虑吗?


小A同学:没有


面试官: zset 底层的实现原理有了解过吗?


小A同学: 好像是跳表实现的吧!


面试官: 你能讲讲它的实现原理以及时间复杂度分析吗?


小A同学:这个不太清楚。

面试官: 你能说说缓存穿透是怎么回事吗?


小A同学:要查询的数据,缓存中不存在,直接打到了数据库,这种请求如果很多的话,全都穿透到数据库, 就会导致数据库奔溃,


面试官:解决方案呢?


小A同学:可以用布隆过滤器来阻挡。


面试官:布隆过滤器的实现原理是什么?能讲讲么?


小A同学:这个不太清楚。


面试官:好的,感谢你参加我们公司的面试,咱们今天就先到这里

为什么面试老是遇到Redis问题?Redis的底层设计原理明明懂一些,可就是说不到点子上?以后还遇到这些Redis的面试题可怎么办?想想就慌!

本文就是愿天堂没有BUG给大家分享的内容,大家有收获的话可以分享下,想学习更多的话可以到微信公众号里找我,我等你哦。

相关文章
|
2月前
|
存储 缓存 NoSQL
Redis常见面试题全解析
Redis面试高频考点全解析:从过期删除、内存淘汰策略,到缓存雪崩、击穿、穿透及BigKey问题,深入原理与实战解决方案,助你轻松应对技术挑战,提升系统性能与稳定性。(238字)
|
7月前
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
5月前
|
存储 NoSQL 定位技术
Redis数据类型面试给分情况
Redis常见数据类型包括:string、hash、list、set、zset(有序集合)。此外还包含高级结构如bitmap、hyperloglog、geo。不同场景可选用合适类型,如库存用string,对象存hash,列表用list,去重场景用set,排行用zset,签到用bitmap,统计访问量用hyperloglog,地理位置用geo。
132 5
|
6月前
|
缓存 NoSQL Java
Java Redis 面试题集锦 常见高频面试题目及解析
本文总结了Redis在Java中的核心面试题,包括数据类型操作、单线程高性能原理、键过期策略及分布式锁实现等关键内容。通过Jedis代码示例展示了String、List等数据类型的操作方法,讲解了惰性删除和定期删除相结合的过期策略,并提供了Spring Boot配置Redis过期时间的方案。文章还探讨了缓存穿透、雪崩等问题解决方案,以及基于Redis的分布式锁实现,帮助开发者全面掌握Redis在Java应用中的实践要点。
371 6
|
8月前
|
存储 NoSQL Redis
阿里面试:Redis 为啥那么快?怎么实现的100W并发?说出了6大架构,面试官跪地: 纯内存 + 尖端结构 + 无锁架构 + EDA架构 + 异步日志 + 集群架构
阿里面试:Redis 为啥那么快?怎么实现的100W并发?说出了6大架构,面试官跪地: 纯内存 + 尖端结构 + 无锁架构 + EDA架构 + 异步日志 + 集群架构
阿里面试:Redis 为啥那么快?怎么实现的100W并发?说出了6大架构,面试官跪地: 纯内存 + 尖端结构 +  无锁架构 +  EDA架构  + 异步日志 + 集群架构
|
11月前
|
存储 缓存 NoSQL
Redis 面试题
Redis 基础面试题
262 1
|
缓存 NoSQL 关系型数据库
大厂面试高频:如何解决Redis缓存雪崩、缓存穿透、缓存并发等5大难题
本文详解缓存雪崩、缓存穿透、缓存并发及缓存预热等问题,提供高可用解决方案,帮助你在大厂面试和实际工作中应对这些常见并发场景。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:如何解决Redis缓存雪崩、缓存穿透、缓存并发等5大难题
|
存储 NoSQL 算法
阿里面试:亿级 redis 排行榜,如何设计?
本文由40岁老架构师尼恩撰写,针对近期读者在一线互联网企业面试中遇到的高频面试题进行系统化梳理,如使用ZSET排序统计、亿级用户排行榜设计等。文章详细介绍了Redis的四大统计(基数统计、二值统计、排序统计、聚合统计)原理和应用场景,重点讲解了Redis有序集合(Sorted Set)的使用方法和命令,以及如何设计社交点赞系统和游戏玩家排行榜。此外,还探讨了超高并发下Redis热key分治原理、亿级用户排行榜的范围分片设计、Redis Cluster集群持久化方式等内容。文章最后提供了大量面试真题和解决方案,帮助读者提升技术实力,顺利通过面试。
|
存储 NoSQL 算法
面试官:Redis 大 key 多 key,你要怎么拆分?
本文介绍了在Redis中处理大key和多key的几种策略,包括将大value拆分成多个key-value对、对包含大量元素的数据结构进行分桶处理、通过Hash结构减少key数量,以及如何合理拆分大Bitmap或布隆过滤器以提高效率和减少内存占用。这些方法有助于优化Redis性能,特别是在数据量庞大的场景下。
面试官:Redis 大 key 多 key,你要怎么拆分?
|
存储 NoSQL Redis
Redis常见面试题:ZSet底层数据结构,SDS、压缩列表ZipList、跳表SkipList
String类型底层数据结构,List类型全面解析,ZSet底层数据结构;简单动态字符串SDS、压缩列表ZipList、哈希表、跳表SkipList、整数数组IntSet