Category
技术场景题
技术场景题 面试知识点、常见追问、场景题和复习资料。
2025 高频 Java 技术场景题专题
高频 Java 技术场景题专题 是 Java 面试中用于考察基础理解、工程落地和表达完整度的题目,回答要先给结论,再补充机制与边界。
数据库乐观锁和悲观锁以及 Redis 分布式锁的区别和使用场景?
数据库乐观锁和悲观锁以及 Redis 分布式锁的区别和使用场景? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
Redis 实现分布式锁,加锁的时候,Redis 不可用了怎么办?
Redis 实现分布式锁,加锁的时候,Redis 不可用了怎么办? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
亿条数据放到布隆过滤器中,大概需要多大内存?如何估算?
亿条数据放到布隆过滤器中,大概需要多大内存?如何估算? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
读取一千个文件,一个线程读取和开十个线程读取,哪种方式效率高?
读取一千个文件,一个线程读取和开十个线程读取,哪种方式效率高? 不能只背概念。核心是共享状态、线程调度、锁粒度、可见性、有序性和资源隔离。
a,b 的联合索引,select b where a = xx,无法走索引覆盖什么原因?
a,b 的联合索引,select b where a = xx,无法走索引覆盖什么原因? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
一个表有用户和时间两个列,现有 3 个需求:根据用户查;根据日期查;根据日期和用户查;问怎么建立索引?
一个表有用户和时间两个列,现有 3 个需求:根据用户查;根据日期查;根据日期和用户查;问怎么建立索引? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
做一个过滤黑名单网址的系统,你觉得要怎么实现,会用到哪些数据结构?
做一个过滤黑名单网址的系统,你觉得要怎么实现,会用到哪些数据结构? 不能只背概念。要先明确目标和约束,再按入口、应用、缓存、消息、数据库、监控和降级拆解方案。
MySQL 单表一千万条数据怎么做分页查询?
MySQL 单表一千万条数据怎么做分页查询? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
Redis、MySQL 和 MongoDB 的区别是什么,各自适用场景呢?
Redis、MySQL 和 MongoDB 的区别是什么,各自适用场景呢? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
MySQL 如果突然断电,会发生数据丢失吗?
MySQL 如果突然断电,会发生数据丢失吗? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
Redis 保存库存的时候,如何避免被 Redis 清理掉?
Redis 保存库存的时候,如何避免被 Redis 清理掉? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
用@Scheduled 执行定时任务,如何避免集群的并发问题
用@Scheduled 执行定时任务,如何避免集群的并发问题 不能只背概念。核心是共享状态、线程调度、锁粒度、可见性、有序性和资源隔离。
假设还有很多内存,有什么情况还会频繁 fullgc?
假设还有很多内存,有什么情况还会频繁 fullgc? 不能只背概念。要从运行时内存、对象生命周期、GC、监控指标和线上调优边界回答。
Redis 和 MySQL 的一次普通查询,RT 在什么范围内是合理的?
Redis 和 MySQL 的一次普通查询,RT 在什么范围内是合理的? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
MySQL 里有 2000W 数据,Redis 中只存 20W 的数据,如何保证 Redis 中的数据都是热点数据?
MySQL 里有 2000W 数据,Redis 中只存 20W 的数据,如何保证 Redis 中的数据都是热点数据? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
C8G 的机器,各项系统指标,什么范围算是正常?
C8G 的机器,各项系统指标,什么范围算是正常? 不能只背概念。要先明确目标和约束,再按入口、应用、缓存、消息、数据库、监控和降级拆解方案。
为什么 MySQL 用 B+ 树,MongoDB 用 B 树?
为什么 MySQL 用 B+ 树,MongoDB 用 B 树? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
Redis 的 zset 实现排行榜,实现分数相同按照时间顺序排序,怎么做?
Redis 的 zset 实现排行榜,实现分数相同按照时间顺序排序,怎么做? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
消息队列使用拉模式好还是推模式好?为什么?
消息队列使用拉模式好还是推模式好?为什么? 不能只背概念。要讲清生产、Broker、消费、确认、重试、死信、堆积、顺序和幂等。
Kafka,单分区单消费者实例,如何提高吞吐量
Kafka,单分区单消费者实例,如何提高吞吐量 不能只背概念。要讲清生产、Broker、消费、确认、重试、死信、堆积、顺序和幂等。
不使用 synchronized 和 Lock 如何设计一个线程安全的单例?
不使用 synchronized 和 Lock 如何设计一个线程安全的单例? 不能只背概念。核心是共享状态、线程调度、锁粒度、可见性、有序性和资源隔离。
从 B+ 树的角度分析为什么单表 2000 万要考虑分表?
从 B+ 树的角度分析为什么单表 2000 万要考虑分表? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
InnoDB 为什么不用跳表,Redis 为什么不用 B+ 树?
InnoDB 为什么不用跳表,Redis 为什么不用 B+ 树? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
应用占用内存持续增长,但是堆内存、元空间都没变化,可能是什么原因?
应用占用内存持续增长,但是堆内存、元空间都没变化,可能是什么原因? 不能只背概念。要从运行时内存、对象生命周期、GC、监控指标和线上调优边界回答。
如何做 SQL 调优:用了主键索引反而查询很慢?
如何做 SQL 调优:用了主键索引反而查询很慢? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
为什么不建议使用 MQ 实现订单到期关闭?
为什么不建议使用 MQ 实现订单到期关闭? 不能只背概念。要讲清生产、Broker、消费、确认、重试、死信、堆积、顺序和幂等。
使用分布式锁时,分布式锁加在事务外面还是里面,有什么区别?
使用分布式锁时,分布式锁加在事务外面还是里面,有什么区别? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
Spring Event 和 MQ 有什么区别?各自适用场景是什么?
Spring Event 和 MQ 有什么区别?各自适用场景是什么? 不能只背概念。要讲清生产、Broker、消费、确认、重试、死信、堆积、顺序和幂等。
为什么不直接用原生的 BlockingQueue 做消息队列
为什么不直接用原生的 BlockingQueue 做消息队列 不能只背概念。要讲清生产、Broker、消费、确认、重试、死信、堆积、顺序和幂等。
Redis 的内存如果用满了,会挂吗?
Redis 的内存如果用满了,会挂吗? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
分库分表时,每个城市的人口不一样,有的密集,有的稀疏,如何实现均匀分布?
分库分表时,每个城市的人口不一样,有的密集,有的稀疏,如何实现均匀分布? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
5 亿条数据放到布隆过滤器中,大概需要多大内存?如何估算?
亿条数据放到布隆过滤器中,大概需要多大内存?如何估算? 重点考察缓存模型、数据结构、过期策略、并发一致性和故障降级,需要结合真实链路回答。