后端共128篇

场景题:线上数据库连接池爆满问题排查

线上数据库连接池爆满是一个严重的性能问题,可能导致系统无法正常处理请求,甚至引发服务雪崩。以下是详细的排查思路和解决方案: 1. 问题现象 错误日志: 日志中频繁出现 Cannot get a conne...
程序百科的头像-程序百科程序百科45天前
02414

面试题:Redis 中 EMBSTR 对象的阈值设置为何为 44?其调整历史是什么?

在 Redis 中,EMBSTR(Embedded String)是一种特殊的内存优化编码方式,用于存储较短的字符串。它的设计目的是减少内存分配和碎片化,同时提高性能。EMBSTR 的阈值设置为 44 字节,...
程序百科的头像-程序百科程序百科38天前
04814

面试题:Redis 的 ListPack 数据结构是什么?

ListPack 是 Redis 5.0 引入的一种紧凑的、高效的数据结构,用于替代 ziplist 在某些场景下的使用。它的设计目标是进一步优化内存使用和性能,特别是在存储小规模列表、哈希表等...
程序百科的头像-程序百科程序百科38天前
02513

面试题:让你设计一个 HashMap ,怎么设计?

设计一个 HashMap 是一个经典的面试题,涉及数据结构、算法、并发等多个方面。以下是设计一个简化版 HashMap 的详细思路和实现方案。 1. 需求分析 核心功能 插入键值对:支...
程序百科的头像-程序百科程序百科45天前
06013

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

Redis 是一种基于内存的键值存储系统,当内存不足时,需要通过 内存淘汰策略 来删除部分数据,以释放内存空间。Redis 提供了多种内存淘汰策略,可以根据业务需求进行配置。 1. Redis 内存淘汰策...
程序百科的头像-程序百科程序百科37天前
03713

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

Redis 中的数据过期后,并不会立即被删除,而是通过 惰性删除 和 定期删除 两种策略来清理过期数据。这两种策略共同作用,确保过期数据能够被及时清理,同时避免对 Redis ...
程序百科的头像-程序百科程序百科37天前
04813

面试题:Redisson 看门狗(watch dog)机制了解吗?

在分布式系统中,Redisson 是一个常用的 Redis 客户端,它提供了分布式锁的实现。Redisson 的分布式锁中有一个“看门狗”(Watch Dog)机制,你能解释一下这个机制的作用以及它是如何工作的吗?...
程序百科的头像-程序百科程序百科48天前
02413

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

Redis 选择跳表(Skip List)作为 Zset 的底层实现,而不是红黑树或 B+ 树,主要基于以下几个原因: 1. 性能方面的考量 查询性能: 跳表的查询、插入、删除操作的时间复杂度都是 O(log N)...
程序百科的头像-程序百科程序百科48天前
02813

场景题:如何设计一个秒杀功能?

设计一个秒杀功能是一个经典的面试题,涉及高并发、高性能、分布式系统设计等多个方面。以下是设计秒杀功能的详细思路和实现方案。 1. 需求分析 核心功能 秒杀活动管理:创建、更新、删除秒杀活...
程序百科的头像-程序百科程序百科45天前
04513

面试题:说一下 Kafka 中关于事务消息的实现?

Kafka 的事务消息机制是为了确保生产者发送的消息能够以原子性的方式写入多个分区,或者在消费和生产的组合操作中实现端到端的精确一次语义(Exactly-Once Semantics)。以下是 Kafka 事务消息...
程序百科的头像-程序百科程序百科44天前
02313