Redis 面试题共53篇

Redis 是流行的分布式缓存数据库,在高性能系统中广泛应用。Redis 面试题的考察重点包括数据类型的使用场景、持久化机制、缓存淘汰策略、分布式锁的实现、集群模式、哨兵机制、事务与 Lua 脚本、多线程模型以及性能调优。

面试题:Redis 性能瓶颈时如何处理?

当 Redis 出现性能瓶颈时,需要从多个维度进行分析和优化。以下是处理 Redis 性能瓶颈的系统性方法: 一、性能瓶颈的常见原因 内存瓶颈 原因:Redis 是内存数据库,内存不足会导致频繁的淘汰策...
程序百科的头像-程序百科程序百科28天前
3815

面试题:Redis 字符串类型的最大值大小是多少?

在 Redis 中,字符串(String)类型的最大值大小为 512MB。这一限制是 Redis 的设计特性之一,旨在平衡性能、内存管理和系统稳定性。以下是详细解析: 一、Redis 字符串最大值的官方限制 技术实...
程序百科的头像-程序百科程序百科28天前
5615

面试题:为什么 Redis Zset 用跳表实现而不是红黑树?B+树?

Redis 的 有序集合(ZSet) 选择使用 跳表(Skip List) 而不是 红黑树(Red-Black Tree) 或 B+树,主要是基于以下多维度的权衡和优化需求。以下是详细分...
程序百科的头像-程序百科程序百科31天前
4915

面试题:Redis Zset 的实现原理是什么?

Redis 的 ZSet(有序集合) 是 Redis 提供的一种高性能数据结构,既能保证元素的 唯一性,又能通过 分数(Score)进行排序。其底层实现结合了 跳表(Skip List) ...
程序百科的头像-程序百科程序百科31天前
3515

面试题:Redis 的 hash 是什么?

在 Redis 中,Hash(哈希) 是一种数据结构,它可以存储一个字符串字段和值之间的映射关系。Redis 的 Hash 类似于编程语言中的字典或对象的概念,非常适合用来表示对象。每个 Hash 可以存储多达...
程序百科的头像-程序百科程序百科昨天
3415

面试题:Redis 中常见的数据类型有哪些?

Redis 支持多种数据类型,每种数据类型都针对特定的使用场景进行了优化。以下是 Redis 中常见的数据类型及其简要介绍: String(字符串) 最基础的数据类型,可用于存储文本或二进制数据。 支持...
程序百科的头像-程序百科程序百科昨天
2915

面试题:Redis 中原生批处理命令(MSET、MGET)与 Pipeline 的区别是什么?

Redis 中原生批处理命令(如 MSET、MGET)与 Pipeline 的区别主要体现在以下几个维度,以下是详细对比: 1. 实现层级 维度原生批处理命令(MSET/MGET)Pipeline实现层级服务端原...
程序百科的头像-程序百科程序百科29天前
4115

面试题:Redis 中有哪些内存淘汰策略?

Redis 提供了 8 种内存淘汰策略,用于在内存不足时自动删除数据,以腾出空间容纳新数据。这些策略分为 4 类:LRU(最近最少使用)、LFU(最不经常使用)、Random(随机) 和&nbs...
程序百科的头像-程序百科程序百科9天前
3414

面试题:Redis 支持事务吗?如何实现?

Redis 确实支持事务,它通过 MULTI、EXEC、DISCARD 和 WATCH 四个命令来实现事务功能。以下是 Redis 事务的详细介绍: 一、事务的基本使用 开启事务:使用 MULTI 命令标记一个事务块的开始。一...
程序百科的头像-程序百科程序百科昨天
5014

面试题:Redis 数据过期后的删除策略是什么?

Redis 的 数据过期删除策略 是通过 惰性删除 和 定期删除 两种机制结合实现的,目的是在 内存占用 和 CPU资源消耗 之间取得平衡。以下是详...
程序百科的头像-程序百科程序百科9天前
3913