Tag
#技术场景题
技术场景题 相关 Java 面试题和知识点。
2025 高频 Java 技术场景题专题
高频 Java 技术场景题专题 是 Java 面试中用于考察基础理解、工程落地和表达完整度的题目,回答要先给结论,再补充机制与边界。
数据库乐观锁和悲观锁以及 Redis 分布式锁的区别和使用场景?
数据库乐观锁和悲观锁以及 Redis 分布式锁的区别和使用场景? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
Redis 实现分布式锁,加锁的时候,Redis 不可用了怎么办?
Redis 实现分布式锁,加锁的时候,Redis 不可用了怎么办? 不能只背概念。要围绕缓存角色、一致性、热点 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 在什么范围内是合理的? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
亿条数据放到布隆过滤器中,大概需要多大内存?如何估算?
亿条数据放到布隆过滤器中,大概需要多大内存?如何估算? 不能只背概念。要围绕缓存角色、一致性、热点 Key、过期策略、故障降级和数据恢复讲清楚。
为什么 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、过期策略、故障降级和数据恢复讲清楚。
分库分表时,每个城市的人口不一样,有的密集,有的稀疏,如何实现均匀分布?
分库分表时,每个城市的人口不一样,有的密集,有的稀疏,如何实现均匀分布? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
MySQL 里有 2000W 数据,Redis 中只存 20W 的数据,如何保证 Redis 中的数据都是热点数据?
MySQL 里有 2000W 数据,Redis 中只存 20W 的数据,如何保证 Redis 中的数据都是热点数据? 不能只背概念。要结合表结构、数据量、索引、执行计划、事务边界和慢查询指标说明。
C8G 的机器,各项系统指标,什么范围算是正常?
C8G 的机器,各项系统指标,什么范围算是正常? 不能只背概念。要先明确目标和约束,再按入口、应用、缓存、消息、数据库、监控和降级拆解方案。
5 亿条数据放到布隆过滤器中,大概需要多大内存?如何估算?
亿条数据放到布隆过滤器中,大概需要多大内存?如何估算? 重点考察缓存模型、数据结构、过期策略、并发一致性和故障降级,需要结合真实链路回答。