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就是不需要我们来考虑什么时候刷入磁盘,而是由操作系统来决定,他想什么时候刷新就什么时候刷新
相关推荐
极客先躯几秒前
高级java每日一道面试题-2025年11月14日-行业专题[LangChain4j]-如何用 LLM 辅助信用风险评估?
java·数据库·langchain·可解释性·数据来源·分析方式·风险识别
深海鱼在掘金2 分钟前
Next.js从入门到实战保姆级教程(第十六章):实战项目(上)——全栈博客系统架构与核心功能
前端·数据库·next.js
步辞2 分钟前
React 自定义 Hook 的命名规范与执行上下文详解
jvm·数据库·python
forEverPlume3 分钟前
如何为 Go 中的 sync.WaitGroup.Wait() 添加超时机制
jvm·数据库·python
耳边轻语9995 分钟前
Hermes 如何省token-配置
人工智能·缓存
2401_883600256 分钟前
mysql如何设置仅允许特定内网访问_MySQL权限配置中的IP绑定
jvm·数据库·python
treacle田8 分钟前
达梦数据库-快速装载工具dmfldr-记录总结
数据库·sql·达梦快速装载dmfldr
阿维的博客日记9 分钟前
什么是mvcc,面试的时候怎么说
数据库·mysql
2401_8714928513 分钟前
SQL如何实现按自定义排序进行分组汇总_ORDERBY与聚合函数
jvm·数据库·python
qq_3300379916 分钟前
如何清洗SQL输入数据_使用框架内置的ORM处理数据交互
jvm·数据库·python