一面(60min)
- java基础数据类型有哪些,int是几个字节的;
- Integer a = 129; Integer b = 129; a==b;成立吗,129换成127呢?
- 说一说HashMap、ConcurrentHashMap、ArrayList。有用过线程安全的list吗,原子集合类介绍一下?
- StringBuffer和StringBuilder区别
- 线程创建方式有哪些,Runnable和Callable的区别,他们实现的方法是啥;
- 线程池构造函数有哪些参数,线程池工作流程,拒绝策略有哪些;
- volatile关键字有何特性实现原理,CountDownLoatch如何使用,ReentrantLock实现原理、AQS实现原理;
- 如何判断哪些对象是需要回收的,可达性标志算法需要标志对象多少次?
- 有哪些垃圾收集器,JDK1.8用的是哪个收集器,用什么命令查看?
- CMS垃圾收集器工作流程,用什么命令查看GC回收情况;
- spring bean的生命周期,扩展接口有哪些,在哪个阶段执行;
- @Transaction实现原理,该注解有哪些属性,传播类型有哪些;
- 自定义一个注解做aop时,pointcut切点如何定义;
- mysql有哪些引擎,有什么区别;何时索引会失效;一条查询sql的执行过程;WAL机制是什么;什么是回表;主从复制具体过程;
- redis数据类型,有哪些数据结构编码类型,列表数据类型有哪些编码类型,什么是渐进式rehash;
- redis持久化机制,aof追加写入日志文件的时机可以如何配置,RDB什么时候会触发生成快照;
- 如何解决mq丢数据、重复消费、乱序到达问题;
二面(45min)
- TCP三次握手、四次挥手过程,为什么要三次握手,两次握手不行吗?
- TCP1.0和1.1的区别;
- 你知道哪些状态码,499,304是什么意思;
- 同源策略是什么,如何解决跨域问题,在哪里解决跨域会比较好;
- spring和springboot的区别,springboot有什么优点、劣势是什么;
- spring cloud和dubbo区别,RPC有哪些实现;
- k8s和docker的关系;k8s有哪些组件;
- 如何优化一条慢sql;
- 问项目;
- 问常见业务问题;
- 问逻辑题;
三面(40min)
- JVM虚拟机常用参数设置;
- G1垃圾收集器工作流程,G1是如何做到控制垃圾收集时间的;
- 说一说JDK源码中比较熟悉的部分
- mysql explain关注哪些字段内容;
- redis的哨兵模式是什么,redis主从模式下主机突然掉电如何解决从库数据不一致;
- redis的主从复制和mysql的主从复制有什么区别;
- k8s是如何做服务发现的;
- 说一说spring cloud有哪些组件,eureka和zookeeper的区别;
- rabbitmq的死信队列是如何实现的;
- 在工作项目中用过哪些设计模式;
- 你们的项目架构是怎样的;