后端共128篇

面试题:RabbitMQ 中主要有哪几个角色或者说概念?

RabbitMQ 是一个基于 AMQP(高级消息队列协议)的消息队列系统,其核心架构中包含多个重要的角色和概念。以下是 RabbitMQ 中的主要角色和概念: 1. 生产者(Producer) 角色:消息的发送者。 职...
程序百科的头像-程序百科程序百科44天前
04115

面试题:Redis 的哨兵机制是什么?

Redis 的哨兵机制(Sentinel)是 Redis 高可用性(High Availability, HA)解决方案的核心组件之一。它的主要作用是监控 Redis 主从集群的状态,并在主节点(Master)发生故障时,自动进行故障...
程序百科的头像-程序百科程序百科38天前
04415

面试题:如何在 Redis 中实现队列和栈数据结构?

在 Redis 中实现队列和栈数据结构可以通过使用 Redis 的列表(List)数据结构来实现。Redis 的列表是一个双向链表,支持在头部和尾部进行插入和删除操作,因此非常适合用来实现队列和栈。 1. 实...
程序百科的头像-程序百科程序百科38天前
03115

面试题:Redis 在生成 RDB 文件时如何处理请求?

在 Redis 生成 RDB 文件(即执行持久化操作)时,Redis 会使用 写时复制(Copy-On-Write, COW) 机制来处理客户端的请求,从而保证数据的一致性和服务的可用性。以下是详细的处理过程...
程序百科的头像-程序百科程序百科38天前
02415

场景题:朋友圈点赞功能如何实现,简单说说?

实现朋友圈点赞功能需要设计一个高效、可扩展的系统,能够处理高并发的点赞请求,并保证数据的一致性。以下是实现朋友圈点赞功能的简单思路: 1. 功能需求 点赞:用户可以点赞或取消点赞某条朋...
程序百科的头像-程序百科程序百科45天前
02715

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

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

场景题:怎么分析 JVM 当前的内存占用情况?OOM 后怎么分析?

在 Java 应用中,分析 JVM 内存占用情况和排查 OOM(Out Of Memory)问题是常见的任务。以下是详细的排查思路和解决方案: 1. 分析 JVM 当前的内存占用情况 1.1 使用 JVM 内置工具 jstat: 使用...
程序百科的头像-程序百科程序百科45天前
02314

面试题:Kafka 中 Zookeeper 的作用?

在 Kafka 的早期版本中,Zookeeper 是一个核心组件,负责管理 Kafka 集群的元数据和协调分布式一致性。 虽然 Kafka 从 2.8.0 版本开始引入了 KRaft 模式(Kafka Raft Metadata Mode),逐步摆脱...
程序百科的头像-程序百科程序百科44天前
04114

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

Redis 集群(Redis Cluster) 是 Redis 提供的分布式解决方案,用于将数据分布在多个节点上,实现高可用性和横向扩展。以下是 Redis 集群的实现原理和核心机制: 1. Redis 集群的核心...
程序百科的头像-程序百科程序百科37天前
02914

场景题:线上消息队列故障,兜底改造方案

线上消息队列故障可能会导致系统无法正常处理消息,进而影响业务逻辑。为了应对这种情况,需要设计一个兜底改造方案,确保在消息队列故障时系统仍能正常运行或快速恢复。以下是一个详细的兜底改...
程序百科的头像-程序百科程序百科45天前
03014