已解析题目
后端开发工程师相关题目
最终一致性如何保障?
考察分布式系统在不能同步强一致时,如何用可靠事件、幂等消费、重试补偿和对账把状态收敛到正确结果。
Redis 热点缓存数据如何处理?
考察 Redis 热 key 的识别、读流量分散、缓存重建保护和强弱一致性取舍,核心是先定位热点再按业务语义降压。
新增“十连抽”功能时会考虑什么设计模式?
考察设计模式能否落到抽奖业务扩展上,重点是稳定流程、可替换规则、校验链路、幂等事务和发奖补偿。
JVM 堆和栈的原理与区别是什么?
考察 JVM 运行时内存模型,核心是区分堆对象生命周期、线程私有栈帧、引用关系、异常类型和 JIT 优化边界。
HashMap 和 ConcurrentHashMap 的原理与区别是什么?
考察 Java 哈希表结构和并发容器实现,重点是桶结构、扩容、线程安全策略、弱一致迭代和 null 限制。
volatile 的原理是什么,能否替代锁?
考察 Java 内存模型,核心是 volatile 保证可见性和有序性,但不保证复合操作原子性,不能替代锁保护临界区。
Full GC 的触发原因和主动触发方式有哪些?
考察 JVM 内存压力和 GC 诊断能力,重点是触发原因、显式 GC 风险、不同收集器差异以及如何从日志定位根因。
MySQL 支持哪些隔离级别,对应实现原理是什么?
考察 MySQL InnoDB 隔离级别、MVCC、ReadView、undo log 和锁机制,重点是快照读与当前读的实现差异。
排查性能瓶颈时应该监控哪些参数?
考察性能排查的指标体系和定位顺序,重点是从用户影响出发,沿应用、资源、依赖和链路追踪逐层收敛。
写单元测试时要注意哪些点?
考察测试工程素养,重点是明确测试边界、可重复性、断言质量、依赖隔离、边界异常用例和覆盖率的正确理解。
为什么使用责任链模式,它的好处是什么?
考察责任链模式的适用场景和工程取舍,重点是把多步骤可变流程拆成可插拔节点,同时控制顺序、终止、观测和性能。
缓存和数据库怎么保持数据一致性?还有别的做法吗?
这题考察 Cache Aside 的读写路径、并发竞态、删除失败补偿和一致性取舍,重点不是追求绝对一致,而是控制旧数据窗口。
同题还出现在 1 个面经场景