面灵AI

拼多多后端社招面经

时间
2026-08
来源
牛客网

《面试题目》

  1. 拼多多基础电商交易 后端社招面经
  2. 一面(peer,细问八股
  3. 介绍下 java内存模型
  4. 介绍下线程池原理以及最佳实践
  5. ReentrantLock 的实现原理,公平锁和非公平锁的适用场景
  6. 说下对 SPI 的理解,有哪些应用场景
  7. 缓存一致性方案
  8. 缓存使用的最佳实践
  9. Redis 为什么快
  10. Redis 如何实现高可用
  11. 介绍下 Redis 缓存的过期策略
  12. MySQL 的日志有哪些,介绍下,binlog和redolog 如何保持一致
  13. MVCC 的实现原理
  14. 介绍下 SQL 优化的经验
  15. B 树 和 B+树的区别,为什么 InnoDB 引擎要用 B+ 树实现索引
  16. kafka 为什么性能好?
  17. kafka 会丢消息吗,如何保证消息的可靠性
  18. kafka 的消费是如何实现的?推、拉、长轮询优缺点和适用场景

《参考解析》

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