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作为缓存数据的持久化是怎么做的呢

相关推荐
Clarence Liu1 分钟前
redis学习 (1) 基础入门
数据库·redis·学习
天生励志12316 分钟前
Redis 安装部署
数据库·redis·缓存
北半球的夜17 分钟前
emoji 表情符号保存问题
数据库·oracle
清风6666661 小时前
基于单片机的智能家居多参数环境监测与联动报警系统设计
数据库·单片机·毕业设计·智能家居·课程设计·期末大作业
煎蛋学姐1 小时前
SSM社区医院儿童预防接种管理系统84ui9(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·儿童预防接种
XUN4J1 小时前
深入解析MySQL事务与锁:构建高并发数据系统的基石
后端·面试
锡兰_CC1 小时前
无缝触达,卓越体验:开启openEuler世界的任意门
服务器·网络·数据库·c++·图像处理·qt·nginx
soda_yo1 小时前
浅拷贝与深拷贝: 克隆一只哈基米
前端·javascript·面试
ttthe_MOon2 小时前
MySQL 高可用解决方案 MHA:原理、配置与实践
数据库·mysql
一 乐2 小时前
高校评教|基于SpringBoot+vue高校学生评教系统 (源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习