共计 1214 个字符,预计需要花费 4 分钟才能阅读完成。
“谈谈你对 Redis 的了解”!
面试的时候遇到这类比拟宽泛的问题,是不是很抓狂?
是不是不晓得从何开始说起?
没关系,明天我用 3 分钟教你怎么答复。
大家好,我是 Mic,一个工作了 14 年的 Java 程序员。
这个问题面试官考查的目标是什么?心愿失去什么样的答复?
考查指标
对于某某技术的了解这一类问题,它是一种比拟宽泛的问题
在面试过程中,考查这类问题有两个很重要的目标:
- 在面试的过程中,面试官心愿求职者能多说一些货色,从而更好的对你的整体状况和能力有一个清晰的判断,因而这类问题,能够找到一些理解你的突破口。
- 这种问题其实没有标准答案,更多的是基于你对它的了解的一个总结这反而可能更好的考查你的技术积攒和逻辑表达能力。
所以,求职者在答复的过程中,须要尽可能逻辑清晰,简单明了的表述进去。
否则很难失去认可。
问题解析
对于 Redis 是什么,想必大部分人都能脱口而出。
它是一个分布式缓存中间件?可这样答复有问题吗?当然有
精确来说,Redis 是一个基于内存实现的 Key-Value 数据结构的 Nosql 数据库。
留神,这里有三个关键点。
- 内存存储
- key-value 构造
- Nosql
所谓内存存储,是指所有数据是存储在内存外面,数据的 IO 性能比拟高。
当然,Redis 也提供了长久化策略来防止内存数据失落的问题 key-value 构造示意数据的存储形式,除了 redis 以外,还有像 LevelDB、Scalaris 等。
而 Nosql,它指的是一种非关系型数据库,相比于传统的关系型数据库而言。
更多的思考到扩展性、性能、大数据量的存储等,补救了关系型数据库的短板像列式存储 ClickHouse、Cassandra;文档存储 MongoDB 图形存储 Neo4J 等都是属于 Nosql 领域。
高手:
Redis 是一个基于 Key-Value 存储构造的 Nosql 开源内存数据库。
它提供了 5 种罕用的数据类型,String、Map、Set、ZSet、List。
针对不同的构造,能够解决不同场景的问题。
因而它能够笼罩利用开发中大部分的业务场景,比方 top10 问题、好友关注列表、热点话题等。
其次,因为 Redis 是基于内存存储,并且在数据结构上做了大量的优化所以 IO 性能比拟好,在理论开发中,会把它作为利用与数据库之间的一个分布式缓存组件。
并且它又是一个非关系型数据的存储,不存在表之间的关联查问问题,所以它能够很好的晋升应用程序的数据 IO 效率。
最初,作为企业级开发来说,它又提供了主从复制 + 哨兵、以及集群形式实现高可用在 Redis 集群外面,通过 hash 槽的形式实现了数据分片,进一步晋升了性能。
如果你喜爱我的作品,记得点赞珍藏加关注!!!
须要 Java 面试材料、简历模板扫下方!
版权申明:本博客所有文章除特地申明外,均采纳 CC BY-NC-SA 4.0 许可协定。转载请注明来自
Mic 带你学架构
!
如果本篇文章对您有帮忙,还请帮忙点个关注和赞,您的保持是我一直创作的能源。欢送关注同名微信公众号获取更多技术干货!