拼多多凉经

2021-08-17 拼多多提前批 后端

一面

项目

  • 秒杀系统的架构

  • 如何防止用户多次秒杀

  • 消息队列的作用

  • 如何实现分布式事务,具体代码怎么写(try/catch)

  • 整个系统的性能瓶颈在哪(redis)

  • 对于秒杀系统,未来考虑怎么进一步优化

  • RPC底层用的netty,介绍一下netty的性能优势

  • 为什么说go更快

  • 介绍一下心跳机制

  • 为什么要用心跳机制

  • 长连接和短连接

java

  • 说说hashmap,结构与扩容
  • 如何设计能够保证hashmap的线程安全(concurrentHashMap)
  • 说说AQS,等待队列如何保证线程安全

mysql

  • 执行事务会涉及到哪些过程、组件(锁、MVCC)

Redis

  • redis为什么快
  • 线程切换损耗的是什么资源

算法

  • 机器人避障,从(0,0)走到(m-1,n-1),路上有石头
  • 求最短路径坐标

二面

项目

  • 手写RPC是简单的实现还是模仿dubbo

  • 说一下服务暴露的实现

  • 为什么要用zk作为注册中心,有什么缺点(慢?)

  • CAP了解吗?zk满足哪个

  • 秒杀系统解决了什么问题

Redis

  • redis集群了解吗?key是如何分发到不同redis中的?
  • 哨兵机制了解吗
  • 持久化机制了解吗

jvm

  • 说说cms垃圾回收器
  • cms的三色标记法了解吗?
  • 如果是你怎么完成cms的重标记,解决漏标错标问题

spring

  • spring源码看过吗
  • 说说refresh的整个过程

实习

  • 大三的实习还记得吗?解决了什么问题
  • 实习有什么收获?

竞赛

  • 说说数学建模解决了什么问题
  • 自己贡献了百分之几?

算法

  • 非严格递增数组,如【1,2,2,3,4,5】,求所有和为p的连续子数组

小结

  • 本次二面主要试探深度,如zk问到了cap,redis问到了key分配,jvm问到三色标记
  • 知识面够广了,但还不够深
  • 再深究一下redis和jvm

三面

算法

  • 链表去重
  • 自己写输入输出
  • 自己设计测试用例
  • 报错了面试官只告诉行号
  • 尽可能地进行优化,提升算法鲁棒性
#拼多多##面经##后端开发#
全部评论

相关推荐

不愿透露姓名的神秘牛友
2024-11-28 17:46
点赞 评论 收藏
分享
评论
1
8
分享

创作者周榜

更多
牛客网
牛客企业服务