redis相关面试题

1、redis有哪些数据结构

String、List、Set、Sorted Set、hashes

2、redis有哪些淘汰策略

noeviction:返回错误当内存限制达到,并且客户端尝试执行会让更多内存被使用的命令。

allkeys-lru: 尝试回收最少使用的键(LRU),使得新添加的数据有空间存放。

volatile-lru: 尝试回收最少使用的键(LRU),但仅限于在过期集合的键,使得新添加的数据有空间存放。

allkeys-random: 回收随机的键使得新添加的数据有空间存放。

volatile-random: 回收随机的键使得新添加的数据有空间存放,但仅限于在过期集合的键。

volatile-ttl: 回收在过期集合的键,并且优先回收存活时间(TTL)较短的键,使得新添加的数据有空间存放。

3、redis持久化

Redis提供了持久化机制给我们用,分别是RDB和AOF

  • 数据快照 (RDB)
    这种行为就类似MySQL的Dump ,redis的RDB,这就是某时某个点的全部数据备份
  • 日志文件(AOF)
    每次的操作就写入日志,当我们需要恢复数据时,就可以根据日志的记录完整的走一遍流程,恢复数据,比如MySQL的BinLog,Hbase的HLog,Redis的AOF
  • 4.0优化了持久化机制支持混合模式持久化
  • 所以Redis给我们提供了三种AOF策略,以供用户按需选择
  • always
    实时刷新,将缓冲区的每一条命令都立即刷新到硬盘的AOF文件。既每执行一条命令,待其刚刷入缓冲区,就立即强制刷入磁盘AOF文件中
  • everysec
    每一秒执行一次,既每一秒都强制将缓冲区的内容刷新到硬盘AOF文件中。
  • no
    不强制刷入,no就是不需要我们来考虑什么时候刷入磁盘,而是由操作系统来决定,他想什么时候刷新就什么时候刷新
相关推荐
宠友信息23 分钟前
MySQL复合索引与Druid优化仿小红书源码个人主页查询链路
数据库·spring boot·websocket·mysql·uni-app
minji...1 小时前
MySQL数据库 (十九) MySQL图像化界面,MySQL连接池
数据库·mysql·navicat·mysql workbench·mysql连接池·数据库图形化界面
想躺平的小羊1 小时前
MySQL中LAST_DAY函数用法
数据库·mysql
光影6272 小时前
MySQL基础入门
数据库·笔记·sql·学习·mysql·学习方法
足球中国2 小时前
nuget把缓存搬离C盘
c语言·windows·缓存
qetfw2 小时前
CentOS 7 搭建 MariaDB 数据库服务
linux·数据库·centos·mariadb
光影6272 小时前
MySQL 进阶篇 —— 事务 / 外键 / 索引 / 高级查询
数据库·笔记·sql·学习·mysql
爬也要爬着前进2 小时前
redis哨兵模式搭建
数据库·redis·bootstrap
小月土星2 小时前
(实战篇)RAG-demo 深度解析:162行代码中的检索增强生成全景 (含Top-k法)
javascript·数据库·llm
10岁的博客4 小时前
DevEco Code 的 Plan+Build 模式:审方案再执行的技术深度解析
大数据·数据库·人工智能