栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Redis面试题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Redis面试题

一、缓存穿透、缓存击穿、缓存雪崩

缓存穿透、缓存击穿、缓存雪崩区别和解决方案

二、Redis有哪些优缺点

优点

1、读写性能优异, Redis能读的速度是110000次/s,写的速度是81000次/s。

2、支持数据持久化,支持AOF和RDB两种持久化方式。

3、支持事务,Redis的所有操作都是原子性的,同时Redis还支持对几个操作合并后的原子性执行。

4、数据结构丰富,除了支持string类型的value外还支持hash、set、zset、list等数据结构。

5、支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。

缺点

1、数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。

2、Redis 不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。

3、主机宕机,宕机前有部分数据未能及时同步到从机,切换IP后还会引入数据不一致的问题,降低了系统的可用性。

4、Redis 较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。为避免这一问题,运维人员在系统上线时必须确保有足够的空间,这对资源造成了很大的浪费。

三、为什么要用 Redis/为什么要用缓存

高性能:假如用户第一次访问数据库中的某些数据。这个过程会比较慢,因为是从硬盘上读取的。将该用户访问的数据存在数缓存中,这样下一次再访问这些数据的时候就可以直接从缓存中获取了。操作缓存就是直接操作内存,所以速度相当快。如果数据库中的对应数据改变的之后,同步改变缓存中相应的数据即可。

高并发:直接操作缓存能够承受的请求是远远大于直接访问数据库的,所以我们可以考虑把数据库中的部分数据转移到缓存中去,这样用户的一部分请求会直接到缓存这里而不用经过数据库。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/582086.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号