面灵AI

上海百度公有云一面面经(拷打一小时20分钟

时间
2026-08
来源
牛客网

《面试题目》

  1. 你在项目中哪里使用了ConcurrentHashMap,为什么要用它
  2. 说说CAS
  3. 说说JVM 垃圾回收算法
  4. 如果 full gc 时间很长,长达5分钟,导致你服务不可用了,你会怎么办?
  5. 说说IOC AOP的原理
  6. 为什么需要IOC
  7. 把对象的生命周期交给IOC有什么好处
  8. 项目为啥用 netty
  9. netty server里面做了什么
  10. worker 线程数是多少
  11. 为什么默认线程数是CPU核心数*2呢
  12. 消息收发的整个架构,就讲一下发消息到接收消息的架构
  13. netty server部署了几个节点
  14. netty 端口那里是不是单独部署
  15. 为啥广播消息要用rabbitmq,而不是直接复用redis
  16. rabbitmq是怎么监听到有消息然后广播出去的
  17. rabbitmq里面存的是什么
  18. 结合netty说说怎么理解同步非阻塞IO的

《参考解析》

  1. Redis常用于缓存、分布式锁和计数。缓存与数据库更新通常采用“先写数据库、再删除缓存”,并通过重试、延时双删或消息补偿处理删除失败。
  2. 并发问题应先明确共享状态和一致性边界,再选择锁、CAS或队列。线程池需要根据任务是CPU密集还是IO密集设置核心线程数、队列容量和拒绝策略,并监控活跃数与队列长度。
  3. 算法题先写出不变量和边界条件,再分析复杂度;常见数组、链表和树问题可分别使用双指针、哈希表、递归或迭代遍历,目标是在线性或对数复杂度内完成。