面灵AI

百度秋招提前批二面

时间
2026-08
来源
牛客网

《面试题目》

  1. 项目深挖:你的秒杀系统怎么解决超卖问题?
  2. 既然用了 Redis 分布式锁,那 RedLock 算法了解吗?有什么争议?
  3. 数据库分库分表后,分页查询怎么优化?
  4. 深分页问题除了游标法还有什么解法?
  5. MySQL 索引下推具体是怎么减少回表的?
  6. MVCC 的 ReadView 是在 select 时生成的还是 update 时?
  7. Spring 循环依赖为什么要用三级缓存而不是二级?
  8. Bean 的生命周期中,后置处理器起了什么作用?
  9. 如果让你设计一个 RPC 框架,核心模块有哪些?
  10. Netty 的零拷贝体现在哪里?
  11. Kafka 如何保证消息的顺序消费?
  12. Kafka 消息积压了上亿条怎么处理?
  13. 线上 CPU 飙高到 100% 怎么排查?
  14. JVM 发生 Full GC 频繁,但内存没满,可能是什么原因?
  15. 虚拟线程了解吗?和平台线程有什么区别?
  16. 手撕:最长递增子序列和接雨水
  17. 二面明显感觉面试官是个技术大佬,不怎么问死记硬背的八股文,全是场景题和连环炮。比如问到分库分表,会一直追问数据迁移、扩容方案。对项目的细节抓得很严,一定要对自己写过的代码逻辑非常清晰。
  18. 国内外求职面试辅助,有困难的DD

《参考解析》

  1. Redis常用于缓存、分布式锁和计数。缓存与数据库更新通常采用“先写数据库、再删除缓存”,并通过重试、延时双删或消息补偿处理删除失败。
  2. MySQL索引通常使用B+树,叶子节点按顺序连接,适合范围查询;设计索引时结合选择性、最左匹配原则和执行计划,避免无效索引与回表开销。
  3. 并发问题应先明确共享状态和一致性边界,再选择锁、CAS或队列。线程池需要根据任务是CPU密集还是IO密集设置核心线程数、队列容量和拒绝策略,并监控活跃数与队列长度。