Redis高频面试题(最新升级版)_花名提莫的博客-程序员宝宝

技术标签: java  Redis  缓存  面试题  数据库  数据结构  redis  

在这里插入图片描述

概述

什么是 Redis?
Redis 有哪些优缺点?
为什么要用 Redis / 为什么要用缓存?
为什么要用 Redis 而不用 map/guava 做缓存?
Redis 为什么这么快?

数据类型

Redis 有哪些数据类型?
Redis 的应用场景?

持久化

什么是 Redis 持久化?
Redis 的持久化机制是什么?各自的优缺点?
如何选择合适的持久化方式
Redis 持久化数据和缓存怎么做扩容?
过期键的删除策略
Redis 的过期键的删除策略
Redis key 的过期时间和永久有效分别怎么设置?
我们知道通过 expire 来设置 key 的过期时间,那么对过期的数据怎么处理呢?

内存相关

MySQL 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis 中的数据都是热点数据
Redis 的内存淘汰策略有哪些
Redis 主要消耗什么物理资源?
Redis 的内存用完了会发生什么?
Redis 如何做内存优化?

线程模型

Redis 线程模型

事务

什么是事务?
Redis 事务的概念
Redis 事务的三个阶段
Redis 事务相关命令
事务管理(ACID)概述
Redis 事务支持隔离性吗
Redis 事务保证原子性吗,支持回滚吗
Redis 事务其他实现

集群方案

哨兵模式
官方 Redis Cluster 方案(服务端路由查询)
基于客户端分配
基于代理服务器分片

Redis 主从架构

Redis 集群的主从复制模型是怎样的?
生产环境中的 redis 是怎么部署的?
说说 Redis 哈希槽的概念?
Redis 集群会有写操作丢失吗?为什么?
Redis 集群之间是如何复制的?
Redis 集群最大节点个数是多少?
Redis 集群如何选择数据库?

分区

Redis 是单线程的,如何提高多核CPU的利用率?
为什么要做 Redis 分区?
你知道有哪些 Redis 分区实现方案?
Redis 分区有什么缺点?

分布式问题

Redis 实现分布式锁
如何解决 Redis 的并发竞争 Key 问题
分布式 Redis 是前期做还是后期规模上来了再做好?为什么?
什么是 RedLock

缓存异常

缓存雪崩
缓存穿透
缓存击穿
缓存预热
缓存降级
热点数据和冷数据
缓存热点 key

常用工具

Redis 支持的 Java 客户端都有哪些?官方推荐用哪个?
Redis 和 Redisson 有什么关系?
Jedis 与 Redisson 对比有什么优缺点?

其他问题

Redis 与 Memcached 的区别
如何保证缓存与数据库双写时的数据一致性?
Redis 常见性能问题和解决方案?
Redis 官方为什么不提供 Windows 版本?
一个字符串类型的值能存储最大容量是多少?
Redis 如何做大量数据插入?
假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?
使用 Redis 做过异步队列吗,是如何实现的
Redis 如何实现延时队列
Redis 回收进程如何工作的?
Redis 回收使用的是什么算法?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41770757/article/details/110763591

智能推荐

[Elasticsearch] 多字段搜索 (一) - 多个及单个查询字符串_dm_vincent的博客-程序员宝宝

多字段搜索(Multifield Search)本文翻译自官方指南的Multifield Search一章。查询很少是只拥有一个match查询子句的查询。我们经常需要对一个或者多个字段使用相同或者不同的查询字符串进行搜索,这意味着我们需要将多个查询子句和它们得到的相关度分值以一种有意义的方式进行合并。也许我们正在寻找一本名为战争与和平的书,它的作者是Leo Tolstoy。

GlobalMapper20提取不规则栅格数据的边界范围矢量,计算不规则栅格图面积_三维GIS那点事_王跃军的博客-程序员宝宝_global mapper计算面积

序:栅格数据经过裁剪后多是不规则的,如何提取他们的边界矢量范围一、提取过程:提取后的边界范围可以另存为kml、shp等矢量数据格式。

【强烈推荐】RNN 架构解析(循环神经网络)_ZSYL的博客-程序员宝宝_rnn网络架构

【NLP】RNN 架构解析1. 认识RNN模型1.1 什么是RNN模型1.2 RNN模型的作用1.3 RNN模型的分类1.4 总结2. 传统RNN模型2.1 传统RNN的内部结构图1. 认识RNN模型1.1 什么是RNN模型RNN(Recurrent Neural Network), 中文称作循环神经网络, 它一般以序列数据为输入, 通过网络内部的结构设计有效捕捉序列之间的关系特征, 一般也是以序列形式进行输出.一般单层神经网络结构:RNN单层网络结构:以时间步对RNN进行展开后的单层网络结

Git得基本使用方法add、commit、push、checkout以及Pull_FomuNorMal-s的博客-程序员宝宝

一、Git是什么?Git是目前世界上最先进的分布式版本控制系统。 Working Directory:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 由于前面2篇文章已经简单得说明了GIT得安装以及SSH得配置,这次得内容主要是以如何使用Git为主要内容来说明当我们下载安装好G...

乘法逆元模板:【洛谷 P3811】_SSL_DFT的博客-程序员宝宝

链接:【luogu P3811】这几天在做 ybtoj 的组合数学,经常要用到乘法逆元,就先去某谷上写了一会乘法逆元。乘法逆元的定义:若a∗x≡1(modb)a*x\equiv1 \pmod {b}a∗x≡1(modb),且a与b互质,那么我们就能定义: x 为 a 的逆元,记为a−1a^{-1}a−1,所以我们也可以称 x 为 a  在 mod ba~~在\bmod ba  在modb 意义下的倒数。求解方法:根据费马小定理,若p 为质数,a 是正整数,且

夏时制 windows/linux_caolaosanahnu的博客-程序员宝宝

http://zh.wikipedia.org/wiki/%E5%A4%8F%E6%97%B6%E5%88%B6夏时制 维基百科,自由的百科全书跳转到: 导航, 搜索 跳过字词转换说明汉漢▼▲各時區多數位於其理想邊界之西,導致實際上全年實施夏時制。夏时制,又称日光节约时制、日光節約時間(英语:Daylight sa

随便推点

String的compareTo()方法返回值_乔志勇笔记的博客-程序员宝宝_compareto比较大小返回值

compareTo()的返回值是整型,它是先比较对应字符的大小(ASCII码顺序),如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的 差值,如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方 全比较完,这时就比较字符的长度. 例: String s1 = "abc"; String

POJ 2236 Wireless Network(并查集)_FinalFantacy~的博客-程序员宝宝

链接:http://poj.org/problem?id=2236解题思路:首先通过并查集划分集合,根据每个点(每对计算机)的从属关系来判断点(计算机)是否连通;需根据计算机的通信范围确定每对计算机是否可以进行直接通信;必须保证可以进行通信的每对计算机都是完好无损的(即已经经过维修的);1. 输入每个计算机的坐标后,判断哪些点可以直接通信,记录;2. 当输入的操作是维修时,标记

day07 of python_zheng_tong的博客-程序员宝宝

第七章:模式匹配与正则表达式不用正则表达式来查找文本模式:isPhoneNumber.py用正则表达式查找文本模式正则表达式,简称为regex,是文本模式的描述方法。例如,\d是一个正则表达式,表示一位数字字符,即任何一位0~9的数字。Python使用正则表达式\d\d\d-\d\d\d-\d\d\d\d,来匹配前面isPhoneNumber()函数匹配的同样文本。创建正则表达式对象Python中...

是的但一台计算机有一个包包,联想拯救者P2双肩包:能装2台笔记本电脑的双肩包..._Marco Liu的博客-程序员宝宝

联想拯救者P2双肩包:能装2台笔记本电脑的双肩包2021-04-15 18:54:139点赞14收藏14评论创作立场声明:自费购买刚拿到手上分量还是蛮重的,没想到居然发的是顺丰快递,上海到广东两天多到手,迫不及待开箱这里附上我的购买链接联想拯救者双肩背包P2适用含16英寸以内笔记本电脑包学生背包269元天猫精选去购买还有购买截图快递包装打开快递包装袋发现还有一层外套保护双肩包的袋子拿出双肩包迫不...

GDT与LDT_zmmycsdn的博客-程序员宝宝_gdt和ldt

转载:https://www.cnblogs.com/hicjiajia/archive/2012/05/25/2518684.htmlGDT 与 LDT很长时间没碰组成原理和操作系统,忘得差不多了,今天学内核需要一些基础知识,搜了些文章补习一下,这篇讲描述符表的文章比较不错:原文地址:http://blog.csdn.net/billpig/article/d

Seaborn 库_eagle2728的博客-程序员宝宝

import seaborn as snsimport matplotlib.pyplot as plt%matplotlib inline #是为了在 Jupyter 中正常显示图形,若没有这行代码,图形显示不出来的titanic=sns.load_dataset('titanic') #数据导入sns.barplot(x='class',y='survived',data=tita...

推荐文章

热门文章

相关标签