redis 面试题1

Redis 是什么?它的用途是什么?

Redis 是一个开源的内存数据库,用于存储和检索数据,常用于缓存、消息传递和计数器等场景。

Redis 和传统关系型数据库之间的区别是什么?

Redis 是一个基于内存的数据库,而关系型数据库通常是基于硬盘的。

Redis 支持多种数据结构,例如字符串、列表、集合和哈希,并提供了针对这些数据结构的命令操作。

Redis 具有高性能和低延迟的特点,适合于读写频繁的场景。

Redis 支持的数据结构有哪些?

Redis 支持字符串、列表、集合、哈希、有序集合等数据结构。

Redis 中的字符串、列表、集合和哈希的区别是什么?

字符串是 Redis 的基本数据结构,可存储字符串、整数或浮点数。

列表是按照插入顺序排列的字符串元素集合。

集合是一组唯一的字符串元素的无序集合。

哈希是一个字符串字段和值的映射表。

Redis 的持久化机制是什么?有哪些方式可以实现持久化?

Redis 的持久化机制包括 RDB(Redis DataBase)和 AOF(Append Only File)。

RDB 会将数据库快照保存到硬盘上的一个二进制文件中,适合用于备份和恢复。

AOF 以日志的形式记录每个写操作,通过重放操作来恢复数据。

Redis 的过期键是如何处理的?

Redis 使用惰性删除和定期删除两种机制来处理过期键。

惰性删除是在获取过期键时才删除,可以节约内存空间。

定期删除是通过在设定的时间间隔内随机检查一部分过期键并删除。

Redis 的主从复制是如何工作的?

Redis 的主从复制通过将主节点的数据复制到从节点来实现数据的备份和读写分离。

主节点将变更操作发送给从节点,从节点接收并应用这些变更。

Redis 的哨兵模式是什么?它的作用是什么?

Redis 哨兵模式用于监控 Redis 实例的健康状态。

哨兵节点会监测主节点和从节点的状态,并在主节点宕机时自动切换为新的主节点。

Redis 支持的事务和原子性操作是什么?

Redis 支持事务操作,可以将多个命令打包在一个事务中执行。

Redis 的事务是原子性的,要么全部执行成功,要么全部回滚。

Redis 的订阅-发布模式是什么?如何实现?

Redis 的发布者(publisher)向一个或多个频道(channel)发布消息。

订阅者(subscriber)可以订阅一个或多个频道,接收发布者发送的消息。

相关推荐
无毁的湖光-Al5 分钟前
解Bug之路-隔离故障点后业务不恢复?-热点Key处理与亚稳态故障
java·数据库·mysql
l1t22 分钟前
DeepSeek总结的有符号、无符号、未对齐:从汇编到 SQL 的教训
汇编·数据库·sql
麦壳饼38 分钟前
SonnetDB SQL Cookbook:常用查询模式速查
数据库·sonnetdb
星夜离尘561 小时前
FIFO深度怎么定?用突发流量和背压算清缓存预算
缓存·fpga开发·verilog·fifo·背压
Sand(ContextGate)1 小时前
从零搭建电商智能导购 Agent:LangGraph 编排 + 三层记忆 + 熔断降级 + 生产部署全链路实战
redis·agent·fastapi·电商·chromadb·langgraph·智能导购
kyle~1 小时前
软件缓存一致性
缓存
for_ever_love__1 小时前
LangChain Text-to-SQL:让不会写 SQL 的人查数据库
数据库·sql·langchain·大模型·agent·rag·问答
梦想不只是梦与想2 小时前
SQLAlchemy:查询与操作 (三)
数据库·python·sqlalchemy
Aric_Jones2 小时前
WAL / CDC / 复制槽 /位点
数据库·oracle
草莓熊Lotso2 小时前
【C++ 基于微服务的即时通讯系统】基建三件套:gflags + gtest + spdlog 源码编译安装与实战入门
linux·网络·数据库·c++·微服务·log4j