Java基础与并发面试考题
01 - Java基础与并发 · 高频面试考题背诵指南 目录 Q1:ArrayList 和 LinkedList 的区别?分别适用什么场景? Q2:HashMap 底层数据结构是什么?JDK8 做了哪些优化? Q3:HashMap 的扩容机制?为什么容量必须是 2 的幂次方? Q4:HashMap 为何线程不安全?JDK7 的死链问题如何发生的? Q5:ConcurrentHashMap 在 JDK7 和 JDK8 中的实现有何不同? Q6:HashSet 的底层原理?如何保证元素不重复? Q7:volatile 关键字的作用?能保证原子性吗? Q8:synchronized 的实现原理?对象锁和类锁的区别? Q9:锁升级的过程(无锁→偏向锁→轻量级锁→重量级锁)? Q10:synchronized 和 ReentrantLock 有什么区别? Q11:Java 内存模型(JMM)是什么?happens-before 原则有哪些? Q12:什么是 AQS?它的核心原理是什么? Q13:CountDownLatch、CyclicBarrier、Semaphore 的使用场景? Q1...
Spring框架与微服务面试考题
02 - Spring框架与微服务 · 高频面试考题背诵指南 目录 Q1:Spring IOC 的工作原理?BeanFactory 和 ApplicationContext 的区别? Q2:Spring Bean 的完整生命周期 Q3:Spring AOP 原理?JDK 动态代理和 CGLIB 代理的区别? Q4:Spring 如何解决循环依赖?三级缓存各自的作用? Q5:@Autowired 和 @Resource 的区别? Q6:@Transactional 失效的场景(至少 5 种) Q7:Spring 事务的 7 种传播行为 Q8:SpringBoot 自动装配原理?@SpringBootApplication 做了什么? Q9:MyBatis 的一级缓存和二级缓存?分别有什么坑? Q10:MyBatis 的 #{} 和 ${} 的区别? Q11:Nacos 注册中心工作原理?和 Eureka 的区别? Q12:Sentinel 的限流算法和熔断策略 Q13:Seata 的 TCC 模式原理?AT 模式和 TCC 的区别? Q14:TCC 模式的三大异常场景(空回滚、悬挂...
MySQL数据库面试考题
03 - MySQL数据库 · 高频面试考题背诵指南 目录 Q1:B+树为什么比 B树、哈希表更适合做数据库索引? Q2:聚簇索引和非聚簇索引的区别?什么是回表? Q3:什么是覆盖索引?如何避免回表?(结合美团项目案例) Q4:联合索引的最左前缀原则?什么情况会导致索引失效? Q5:索引失效的常见场景(8种) Q6:Explain 各字段含义?type 字段性能排序? Q7:MySQL 四种事务隔离级别 Q8:InnoDB MVCC 原理详解 Q9:InnoDB 的锁类型详解 Q10:MySQL 死锁如何排查和预防? Q11:乐观锁和悲观锁?版本号机制如何实现乐观锁? Q12:MySQL 深分页(LIMIT 1000000, 10)为什么慢?如何优化? Q13:百万级大表分库分表策略 Q14:MySQL 主从复制原理?Binlog 三种格式的区别? Q15:一条 SQL 语句在 MySQL 中的完整执行过程 一、索引原理Q1:B+树为什么比 B树、哈希表更适合做数据库索引?核心考点:B+树的叶子节点存数据、非叶子节点只存索引、支持范围查询。 背诵话术: 对比哈希表:哈希...
Redis与本地缓存面试考题
04 - Redis与本地缓存 · 高频面试考题背诵指南 目录 Q1:Redis 五种核心数据类型及底层实现 Q2:ZSet 的跳表(skiplist)原理 Q3:Redis 常见业务场景实现 Q4:RDB 和 AOF 的优缺点对比?生产中如何选择? Q5:AOF 的三种写回策略 Q6:Redis 主从复制原理 Q7:Redis Sentinel(哨兵)的工作原理 Q8:Redis Cluster 分片集群原理 Q9:Redis 过期键删除策略 Q10:Redis 内存淘汰策略 Q11:缓存穿透/击穿/雪崩的区别和解决方案 Q12:缓存与数据库双写一致性(结合招行项目) Q13:Redisson 分布式锁 WatchDog 机制 Q14:Redis Pipeline 和 Lua 脚本的使用场景 Q15:Caffeine 的 W-TinyLFU 算法原理 Q16:分布式多节点本地缓存一致性(结合招行项目) Q17:Redisson 分布式锁的可重入原理与红锁(Redlock)争议 一、Redis 数据结构与使用场景Q1:Redis 五种核心数据类型及底层...
Kafka消息队列面试考题
05 - Kafka消息队列 · 高频面试考题背诵指南 目录 Q1:Kafka 的整体架构?核心组件关系? Q2:Kafka 为什么这么快? Q3:Kafka 消息存储结构 Q4:ISR、HW、LEO 分别是什么? Q5:Kafka 生产者发送消息的完整流程 Q6:如何保障 Kafka 消息零丢失? Q7:Kafka 生产者幂等性原理?如何开启? Q8:Kafka 消费者组的工作机制 Q9:分区分配策略(Range / RoundRobin / Sticky) Q10:Rebalance 再平衡的触发条件和如何避免 Q11:如何保证 Kafka 消息的顺序消费? Q12:消费者如何实现幂等性消费? Q13:消息积压如何紧急处理?(结合 SRM 项目) Q14:Kafka 事务消息原理?Exactly Once 如何保证? Q15:死信队列(DLQ)在项目中的应用 一、Kafka 核心概念Q1:Kafka 的整体架构?核心组件关系?核心考点:Broker/Topic/Partition/Replica/Produc...
JVM调优面试考题
06 - JVM调优 · 高频面试考题背诵指南 目录 Q1:JVM 内存区域划分?各区域存什么?哪些区域会 OOM? Q2:JDK8 的元空间(Metaspace)为什么替换永久代(PermGen)? Q3:对象的内存布局(对象头 + 实例数据 + 对齐填充) Q4:什么是逃逸分析?JVM 的三种逃逸优化? Q5:什么是 GC Roots?哪些对象可以作为 GC Roots? Q6:三种 GC 算法的原理、优缺点 Q7:新生代和老年代?对象晋升的条件? Q8:CMS 垃圾收集器的工作原理和缺点 Q9:G1 垃圾收集器的 Region 设计 and 工作原理 Q10:ZGC 的原理和为什么能实现 <10ms 的 STW? Q11:CPU 飙高 100% 的完整排查步骤(结合招行项目) Q12:OOM 内存溢出的完整排查步骤(结合医博项目) Q13:频繁 Full GC 的排查思路 Q14:生产环境核心 JVM 参数 Q15:Arthas 常用诊断命令 Q16:类加载过程?什么是双亲委派模型?为什么要破坏它? 一、JVM 内存结构Q1:JVM 内存区域划分?各区域存什么...
Elasticsearch面试考题
07 - Elasticsearch · 高频面试考题背诵指南 目录 Q1:什么是倒排索引?和正排索引有什么区别? Q2:ES 的写入流程(数据如何落盘)? Q3:为什么 ES 是”近实时(Near Real-Time)”而非真正的实时? Q4:ES 的查询流程(Query Then Fetch)? Q5:ES 深分页(from + size)为什么慢?如何解决? Q6:ES 集群的核心概念(Node / Shard / Replica) Q7:ES 如何保证写一致性? Q8:ES 和 MySQL 在搜索场景下如何配合? Q9:分片数和副本数的设计原则? Q10:ES 为什么比 MySQL 的 LIKE 查询快? Q11:ES 和 Solr 的选型对比? 一、核心原理Q1:什么是倒排索引?和正排索引有什么区别?核心考点:倒排索引的 Term → PostingList 映射结构,是 ES 全文检索的基石。 背诵话术: 正排索引:以文档 ID 为 Key,记录文档中包含了哪些词(文档 → 关键词)。MySQL 的 B+Tree 索引就是正排索引。适合按...
计算机网络基础面试考题
08 - 计算机网络基础 · 高频面试考题背诵指南 目录 Q1:TCP 三次握手过程?为什么是三次而不是两次或四次? Q2:TCP 四次挥手过程?为什么是四次?TIME_WAIT 为什么是 2MSL? Q3:TCP 如何保证可靠传输? Q4:TCP 拥塞控制的四个阶段 Q5:HTTP 1.0 / 1.1 / 2.0 / 3.0 的核心区别 Q6:HTTPS 的握手过程?(TLS 1.2 / 1.3) Q7:BIO / NIO / AIO 的区别? Q8:select / poll / epoll 区别? Q9:Cookie、Session、JWT / Token 的区别? Q10:浏览器输入 URL 后发生了什么? 一、TCPQ1:TCP 三次握手过程?为什么是三次而不是两次或四次?核心考点:握手的目的(同步序列号 + 验证双方收发能力)决定必须是三次。 背诵话术: 三次握手的过程: 客户端 → 服务端:SYN = 1, seq = x(客户端进入 SYN-SENT 状态) 服务...
项目STAR与场景题面试考题
09 - 项目STAR自述与高频场景题 · 面试通关指南 目录 一、四大项目 STAR 完整自述 项目一:医院后台管理系统(医博系统) 项目二:美团智能化餐饮 SaaS 管家运营引擎 项目三:招商银行分布式核心流程调度中台 项目四:SRM 采购端全链路自动化管理平台 二、技术底层深度挖掘 Q1:动态审批流引擎如何设计(责任链 + 数据库配置)? 三、高频场景题答辩 场景题 1:SRM 询价 Kafka 消息大量积压,如何处理? 场景题 2:招行中台下游服务假死导致连接池耗尽,如何快速恢复? 场景题 3:如何设计一个通用的分布式 ID 生成方案? 场景题 4:秒杀系统的完整设计 场景题 5:微服务接口幂等性如何保证? 场景题 6:如何设计支持亿级数据的定时任务调度系统? 一、四大项目 STAR 完整自述项目一:医院后台管理系统(医博系统,2020.06 ~ 2022.08)STAR 自述模板: S(背景):我毕业后第一份工作是在医博系统技术(深圳),参与开发面向中小型私立医院的数字化管理后台,系统涵盖挂号预约、就诊结算积分核算、药品管理、患者病历管理等模块,服...








