1、请先简单自我介绍一下自己?(一般不超过5min)
2、你最熟悉的项目是哪一个,讲一下用了哪些技术栈?(尽量讲出系统架构图使用到的技术组件和为什么选型这个组件?)
3、你项目中使用什么技术解决了什么复杂业务场景问题?
4、生产环境中,发现堆栈溢出和生产环境出现OOM怎么排查?怎么分析处理?
5、平时熟悉使用的Linux命令有哪些?
6、简单说下TCP的3次握手与4次挥手?
7、http与https有什么区别?
8、简单说下JVM运行原理,包括类加载机制、内存区域分布与垃圾回收机制?
9、平时使用JDK1.8还是其他版本的JDK,是否了解JDK1.8的新特性有哪些?
10、开发中经常在什么场景使用什么数据结构去解决问题,结合实际项目讲下?
11、是否了解hashmap和arraylist的底层,如何触发扩容?
12、说下spring全家桶有哪些技术栈?
13、如何理解IOC与AOP?
14、实际开发中常用的创建多线程的开发方式有哪些?
15、是否有使用过线程池,创建线程池要注意哪几个核心参数?
16、实际开发中,是否有接触过高并发场景,如何引入乐观锁或者悲观锁解决高并发问题?
17、熟悉哪些常用的设计模式,解决什么问题,至少讲3个?单例模式下什么场景下会被破坏?
18、熟悉哪些主流数据库?
19、如何解决MySQL软删除与唯一索引的问题?
20、是否了解MySQL数据库Inodb引擎的索引的数据库结构?
21、当生产环境出现查询非常慢的时候,定位到是SQL慢查询问题,如何优化?
22、redis有哪些数据类型,底层数据结构怎样的?
23、是否了解redis数据的持久化存储方式?
24、使用redis设计预定单取消的场景?
25、redis集群部署一般多少个节点?主从节点部署还是哨兵机制?
26、什么是缓存穿透、缓存击穿、缓存雪崩?
27、是否了解nacos,简单说下nacos注册与发现原理?
28、了解哪些消息中间件原理?
29、如果让你来封装一个stater,你要注意哪些?
30、如果让你来重构优化一个系统,你会考虑哪些点?
31、你上一家公司离职原因是什么?
32、你的期望薪资是多少?
33、你还有什么问题想问我的?