面试请讲讲Redis
1、Redis 是什么 : 一个开源的、高性能、内存数据库
开源---- 使用多 发展好
高性能--- 官网说 能到 10万 qps
内存------ 主要把数据放到内存里的
数据库---- kv 支持复杂的数据结构 list set zset hash
2、做什么(场景)
缓存--- 放mysql之前
前n个评论
top N
定期失效
发布/订阅
共享session
分布式锁
3、部署结构
3.1 单机
3.2 主从
3.3 哨兵 --v2.8 自动失败转移 通知客户端
3.4 集群
3.4.1 虚拟槽 slot 16383 容易扩展
3.4.2 key批量操作支持有限。如mset、mget
key事务操作支持有限--不支持夸节点事物
不支持多数据库空间。单机下的Redis可以支持16个数据库,
集群模式下只能使用一个数据库空间,即db0
4、问题
4.1 缓存穿透
什么是缓存穿透 :
处理: 对查询结果为空的情况也进行缓存、对一定不存在的key进行过滤
4.2 缓存雪崩
当缓存服务器重启或者大量缓存集中在某一个时间段失效,
这样在失效的时候,会给后端系统带来很大压力。导致系统崩溃。
处理 : Redis高可用 、
不同的key,设置不同的过期时间,让缓存失效的时间点尽量均匀
限流 降级 隔离
5、你自己遇到的 Redis相关问题:
jedis 没关闭连接问题
6、 其他可能面试问题:
一个字符串类型的值能存储最大容量是多少?
512M
Redis集群最大节点个数是多少?
16384个。
Redis集群如何选择数据库?
Redis集群目前无法做数据库选择,默认在0数据库。
Redis事务相关的命令有哪几个?
MULTI、EXEC、DISCARD、WATCH
相关推荐
Java面试突击,是java面试必备的复习资料,总结的很到位。大家可以借鉴学习下。分为 1.1 如何准备一场面试 2.1 Java 基础知识 三 计算机网络常见面试点总结 四 Linux 五 MySQL 六 Redis
│ Java面试题80:java访问redis级redis集群?.mp4 │ Java面试题81:微信公众号分类和微信开发原理.mp4 │ Java面试题82:怎么把微信和业务平台进行绑定.mp4 │ Java面试题83:项目的分类和项目参与者.mp4 │ Java...
附有面试讲解视频,不是网盘,下载既有视频,屡试不爽的面试宝典。 Java面试题01.面试的整体流程 Java面试题02.java的垮平台原理 Java面试题03....Java面试题04.java中...Java面试题80:java访问redis级redis集群 ......
分布式锁有很多种解决方案,今天我们要讲的是怎么使用缓存数据库Redis来实现分布式锁。 课程目标: 理解redis分布式锁的应用场景 掌握redis分布式锁的实现原理 掌握redis分布式锁在微服务项目中的应用 掌握...
3. 从浅到深:回答问题时,先从基础概念讲起,然后逐渐深入,展现出自己的知识深度。 4. 缓冲时间:面对问题时,给自己留出短暂的缓冲时间,整理思路后再回答,避免慌乱。 二、技术问题 1. 并发编程知识:面试官会...
"Java面试突击核心讲百度云"标签提示了这是一个网络共享的资源,可能包含了在线视频教程、PDF文档、练习题库等形式的学习资料。通过这些资源,学习者可以系统性地复习和巩固Java面试的关键知识点,模拟面试场景,...
7 用过的中间件有哪些,讲讲? 8 spring ioc和aop ? 9 springmvc流程 ? 10 springboot的常用注解 ? 11 消息组件的作用?项目中用过么? 12 Redis 缓存穿透,击穿,雪崩? 13 Redis的持久化 ? >>>>>>>>>>>
本套面试题将Java中的各个知识点模块混合详讲,讲解的非常详细,是一套极好的面试题宝典哦。本套课程涵盖的知识点有:SpringBoot、SpringCloud、SpringMVC、Spring、Mybatis、MySQL、Redis、Oracle、秒杀等 我所有...
docker讲得最清楚.doc Dubbo是什么?能做什么?.doc java 基于TCP协议的Socket编程和通信.doc Java面试高级篇—说说TCP,UDP和socket,Http之间联系和区别.doc MySQL千万级的大表要怎么优化(读写分离、水平拆分、垂直...
"23讲搞定后台架构实战"可能涉及上述所有知识点的实践案例,通过深入讲解帮助学习者掌握架构设计的核心技巧,并能在面试中有效地展示自己的技能。在学习过程中,结合实际的项目经验,将理论知识与实际操作相结合,能...
Java面试八股文,顾名思义,是指在求职面试中常常被问到的经典问题,这些问题涵盖了Java开发的多个重要领域。以下将详细介绍这些领域的核心知识点: 1. **设计模式**: 设计模式是软件工程中经过验证的解决常见...
在各行各业中,面试前我们总会思索一个问题:究竟什么样...⑥ 用过的中间件有哪些,讲讲? ⑦ spring ioc和aop ? ⑧ springmvc流程 ? ⑨ springboot的常用注解 ? ⑩ 消息组件的作用?项目中用过么 >>>>>>>>>>>
* 讲讲你常用的 Linux 命令,查询分析和跟踪日志的方法 * 负载均衡的策略可以大致分为两大类:内置策略和扩展策略 * 是否用过抓包工具?tcpdump?抓包的原理是什么? * 进程间如何通信?线程间如何切换? MySQL * ...
"2022 步步高 Java 后端 6 面试经验" 以下是从给定的文件中生成的相关知识点: Java 基础 1. Java8 的新特性:Stream 流、Lambda 表达式 2. HashSet 的原理 3. HashSet 与 HashMap 的区别 4. 线程安全的集合类有...
18道经典 MySQL 面试题。1、用一句话介绍什么是MySQL?2、对MySQL数据库去重的关键字是什么?3、MySQL多表连接有哪些方式?怎么用的?这些连接都有什么区别?4、MySQL数据库和Redis的区别?5、说一下索引的优势和...
java收银系统 ...那么其次看大量的面经,可以将每个面经当作一次面试,查看自己是否能讲出来,查漏补缺! 最后,不断沉淀即可。祝好运!!! 本人所经历的面经 笔试题汇总(持续...) Java面试思维导图(包
本资源为 Java 面试题集,涵盖 Java 基础知识、数据结构、算法、数据库、JVM 和 Redis 等方面的知识点。 Java 基础知识 1. JAVA 中的几种基本数据类型是什么,各自占用多少字节? Java 中有八种基本数据类型:...
Redis支持五大数据类型:字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。它们分别适用于不同的应用场景,例如缓存、计数、发布订阅等。 以上仅是部分知识点的讲解,每个话题都值得深入...