职位题库

后端开发工程师面试题库

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

1256 道题目建议用时 3768 分钟专项面试练习

全部题目 1256 道题

529

解释 epoll 的边缘触发和水平触发区别?I/O 多路复用通常选择哪个模式?

考察候选人对 epoll 两种触发模式的理解,以及在实际中如何选择。
530

请解释 Copy-On-Write(写时复制)的原理,并说明它在后端系统中的应用场景。

考察候选人对写时复制机制的理解深度,以及能否将其与实际后端开发场景(如 fork 进程、Redis 持久化、文件系统)结合。
531

如何保证消息队列中的消息不丢失?请从生产者、Broker、消费者三个环节说明。

考察候选人对消息队列可靠性投递的完整理解,包括生产端确认、Broker 持久化、消费端手动确认等机制。
532

请解释数据库中的 MVCC(多版本并发控制)原理,并说明它如何解决读写冲突。

考察候选人对数据库并发控制机制的理解,特别是 MVCC 的实现原理、版本链、Read View 以及在不同隔离级别下的行为。
533

请设计一个线程池,并说明设计时需要注意哪些关键点。

考察候选人对线程池核心参数、任务队列、拒绝策略、线程复用和监控的理解,以及在实际项目中的调优经验。
534

请描述你在实习中遇到的最有挑战性的技术问题,你是如何分析和解决的?

考察候选人在真实实习场景中面对技术难题时的分析思路、解决能力和结果导向意识。
535

你使用过哪些AI工具?codex和cursor有什么区别?使用AI工具时你的开发流程是怎样的?

考察候选人对AI辅助开发工具的熟悉程度、工具选型能力以及将AI融入开发流程的实践。
536

在项目中,订单对账是如何实现的?订单ID在什么时候生成?为什么使用Lua脚本?

考察候选人对订单系统核心流程的理解,特别是对账机制、ID生成策略以及Redis Lua脚本的应用。
537

假设你下订单后超过十分钟未支付,系统要自动关闭订单,你会用什么技术实现?

考察候选人对延迟任务处理方案的设计能力,包括技术选型、可靠性和扩展性考虑。
538

你是如何学习Java的?什么时候开始学的?

考察候选人的Java学习路径、自学能力和技术基础积累。
539

MySQL 怎么保证事务中的操作全部成功或全部失败?

考察候选人对数据库事务原子性实现机制的理解,包括 undo log、redo log 和事务控制语句。
540

如果让你设计 Agent 的短期记忆和长期记忆,你会怎么做?

考察候选人对 Agent 记忆架构的设计能力,包括存储、检索、遗忘机制等。
返回面试题库