贝壳后端Java暑期实习 2022.03.26
过去好久了,终于抽出时间来了。
一面(35分钟)
一上来写代码(15分钟吧)
- 外部依赖。就是外面给你一个接口,你去调用这个接口,写一下业务逻辑,怎么处理?
- 需要考虑的点有:接口方网络断连怎么办?异常怎么处理?超时需要重试。日志!!!业务代码必须有日志!!!可能还有别的
基础
- JVM:新生代和老年代的比例是多少?1:2
- Java对象存在哪?
- Java生成一个对象之后,有哪些信息?
- 导致栈溢出的原因有哪些?
- 如果一个程序高耗CPU(比如是80%),怎么去检查是哪里的问题,项目正在运行?
- 数据库:怎么对一个表建索引比较合理?
- 索引有哪几类?
- 对于经常查询的列,是不是一定要建索引?
- 给你一个表,它的一列建了索引,说一下查询过程?
- B树和B+树的区别?
- 索引为什么不用B树而用B+树?
- 你知道怎么分析一个查询语句吗?慢查询调优?为什么会查询慢?
- explain查到的有哪些属性?你都关注哪些?
- 数据库查询不走索引的情况有哪些?
- 线程池:你是用封装好的API,还是调用底层的?
- 推荐的都是调用底层的,为什么?API也能设参数啊
- 说一下SpringBoot的starter的启动过程?
- 锁升级?
- SpringBoot是怎么执行一个事务的,加了哪个关键字,它是怎么做到事务执行的?
- redis:有哪些数据结构?
- redis:说一下set过程?
- redis:对于bigValue,怎么存?
- 说到了博客,问自己怎么学习的?
贝壳二面(25分钟)
- 自我介绍
- 多线程:volatile、synachronized
- JVM:类加载机制、垃圾回收的过程
- MySQL:索引的底层原理、怎么进行sql调优
- Spring:IOC、AOP (IOC除了有降低耦合的功能,还有啥)
- SpringCloud了解吗
- IO多路复用
- AQS
- 项目
- 博客
- 优缺点