职位题库

后端开发工程师面试题库

面向后端开发工程师相关面试,围绕系统设计、算法、MySQL、Redis、缓存等主题展开练习,结合题目考察点、回答思路、参考答案和常见误区,梳理知识要点并练习清晰表达。

1239 道题目建议用时 3717 分钟专项面试练习

全部题目 1239 道题

997

说一下跨机房写入缓存?

考察候选人对跨机房缓存一致性和写入策略的理解,以及在实际项目中的应用。
998

请实现一个算法,合并所有重叠的区间。

考察候选人对区间合并问题的理解,以及排序和数组操作的能力。
999

请实现一个函数,判断给定的二叉树是否镜像对称。

考察候选人对二叉树遍历和递归的理解,以及对称性判断的逻辑。
1000

有n个位置和m种花朵,你可以任选一些位置种植花朵,但相邻位置上如果有花朵,它们的品种不能一样。求一共有多少种种植方案。

考察候选人对动态规划的理解,以及解决组合计数问题的能力。
1001

你在做技术选型时为什么选择用 Lua 脚本来判断加减库存,而不是直接用 Redis 的 Redisson?

考察候选人对 Redis 原子操作、分布式锁实现方式的理解,以及技术选型时的权衡能力。
1002

在秒杀场景中,关于商品信息和库存的预热,你在处理时会额外注意哪些点?

考察候选人对秒杀系统缓存预热环节的理解,包括数据一致性、热点key、预热时机等。
1003

如果系统频繁 Full GC,你会排查什么?怎么排查?

考察候选人对 JVM 内存管理和 GC 问题的排查能力,包括工具使用和问题定位。
1004

请详细说明你设计的秒杀脚本原子化流程,包括经过哪些步骤,以及库存检查、重复购买判断、数据库落单、确认消息等环节哪些在脚本内、哪些不在。

考察候选人对秒杀核心链路的设计能力,是否清晰划分脚本内外的职责边界,以及是否理解原子性、库存扣减、幂等和消息确认等关键点。
1005

当只剩一张优惠券时,两个人同时抢,你的脚本如何处理?如何判断和避免超卖?

考察候选人对高并发下资源竞争的处理能力,是否掌握原子操作、分布式锁、乐观锁等防超卖手段。
1006

如果数据库已写入订单,但还没收到确认消息,消费者就崩溃了,你有做恢复操作吗?恢复后如何避免再产生一个订单?

考察候选人对分布式事务、消息可靠投递、幂等消费和故障恢复的设计能力。
1007

请介绍你的RAG项目解决了什么问题,并详细说明离线流程和在线流程分别做了什么。

考察候选人对RAG系统的整体理解,能否清晰描述离线索引和在线检索生成的流程,以及各环节的技术选型。
1008

你了解或使用过混合检索吗?相比语义化检索,你认为混合检索有更大的提升吗?

考察候选人对检索技术的广度,是否理解语义检索与关键词检索的优劣,以及混合检索的融合策略。
返回面试题库