拼多多暑期后端二面
3/30
没怎么准备Java,被问麻了
- 有java相关的项目吗(说了个很早以前的秒杀项目...早忘了)
- 有哪些模块,有哪些挑战,怎么处理的
- 超卖的cas,cas的逻辑是什么
- cas的缺点
- cas和普通的锁的区别,什么时候用cas什么时候用到锁
- java里有哪些地方用到吗
- java怎么处理多线程并发的问题
- synchronized怎么去使用,有哪几种用法
- 作用在类方法和成员方法上有什么区别,怎么实现的,对对象加锁和对类加锁
- 类是怎么加载的
- 为什么要有双亲委派
- 初始化的链接有什么作用
- 类在初始化过程中,它的静态变量,静态方法块,成员变量,构造函数的执行步骤是什么
- Lock是怎么使用的,是否可重入,公平锁和非公平锁
- 可重入锁是怎么实现的
---
- 限流怎么做的,什么时候应该用限流
- 限流有哪些监控指标
- qps和tps的区别
- 限流之后有什么样的措施
- 针对秒杀的热点,有什么应对方式吗
- 什么时候更新缓存
- 缓存和db,事务场景内怎么保证一致性
- 限流和mq分别什么情况下使用
- mq的注意点,比如消息是否会丢失,会不会有节点qps不一致
- 消息积压怎么处理
- 接触过顺序消费吗,实现
- 多个队列怎么保证顺序?同一个商品顺序,不同商品乱序
- redis和本地缓存怎么用的
- 怎么通知实例节点加载这个内存缓存
---
- 发布平台做的是蓝绿发布吗?发布的步骤是怎么样的
- 怎么判断一个服务是否启动好了
- 有了解过探活协议吗,七层协议,四层协议有什么区别
- java中浮点数精度怎么解决,有了解过实现吗,为什么有精度问题
- java的内存结构了解过吗
- 堆和栈有什么区别
- java里面对于不可修改集合怎么实现
- java的函数闭包
- 数据库有了解吗,mvcc
- 隔离级别,怎么实现的
- undo、redo、事务检查点
- 多线程模拟秒杀?(表达出多线程的操作就行,商品库存100个减到零)
- 实现hashmap