Redis面试相关

数据过期策略

惰性删除

当用到那个key的时候再检查是否过期,过期则删除,有效则返回key

优点是可以节省检查过期的时间 缺点是会浪费内存

定期删除

每隔一段时间对一些key进行检查并且删除里面的过期key

有两种模式

slow模式是定时任务,频率是10HZ,执行时间不超过25ms,可以通过配置文件调整频率

fast模式执行频率不固定,每次间隔不低于2ms,执行时间不超过1ms

Redis是惰性删除加定期删除都使用

8种内存淘汰策略

集群模式:

主从复制

哨兵模式

分片集群

主从复制中数据同步的流程

全量同步:主节点通过replicationid判断是不是第一次同步,如果是第一次同步需要进行一次bgsave生成rdb文件进行同步,然后把生成的rdb文件传输给从节点,rdb期间执行的命令会记录在日志文件中。

增量同步(slave重启或者后期数据变化):如果不是第一次同步就读从库传给主库的offset后的命令。

redis是单线程的为什么还那么快

redis是纯内存操作,执行速度非常快

采用单线程避免不必要的上下文切换,多线程还要考虑线程安全问题

采用I/O多路复用模型,非阻塞IO

解释一下I/O多路复用模型

redis是纯内存操作性能瓶颈是网络延迟而不是执行速度,I/O多路复用模型就实现了高效的网络请求

redis作为缓存数据的持久化是怎么做的呢

相关推荐
千寻girling5 分钟前
Koa.js 教程 | 一份不可多得的 Node.js 的 Web 框架 Koa.js 教程
前端·后端·面试
全栈前端老曹7 分钟前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
程序员清风13 分钟前
北京回长沙了,简单谈谈感受!
java·后端·面试
神梦流21 分钟前
ops-math 算子库的扩展能力:高精度与复数运算的硬件映射策略
服务器·数据库
让学习成为一种生活方式29 分钟前
trf v4.09.1 安装与使用--生信工具42-version2
数据库
啦啦啦_999939 分钟前
Redis-5-doFormatAsync()方法
数据库·redis·c#
生产队队长1 小时前
Redis:Windows环境安装Redis,并将 Redis 进程注册为服务
数据库·redis·缓存
老邓计算机毕设1 小时前
SSM找学互助系统52568(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·javaweb 毕业设计
痴儿哈哈1 小时前
自动化机器学习(AutoML)库TPOT使用指南
jvm·数据库·python
网络安全-杰克1 小时前
2026面试自动化测试面试题【含答案】
自动化测试·软件测试·面试·职场和发展