面试公司:北京宇信科技集团股份有限公司
面试岗位:Java工程师
面试问题:
1.为什么现在系统都使用分布式架构,他有什么优势?
2.springcloud和dubbo有什么区别,dubbo比springcloud有哪些优势?
3.Dubbo使用zk做注册中心,zk挂了怎么办?怎么保证zk不会挂?挂了还能用嘛?
4.zk有哪些作用?
5.springboot有哪些注解?说说你常用的注解?
6.我看你熟悉redis,你能说说Redis更新策略吗?多久更新一次?
7.你的代码怎么保证质量的?
8.我看你写项目优化,那进行代码重构了嘛?怎么重构的?
9.数据库怎么查询一条sql?
10.SQL慢查询
11.SQL优化有几种方案,具体说下
12.springcloud组件及各个组件的功能?
13.字符串怎么高效拼接?
14.Hashmap1.7和1.8区别?我们在多线程环境下用哪个类?
15.谈一个你写的最好的功能。
16.平时有写工具类嘛?你是怎么保证写的工作类是单例的?
17.分布式事务怎么处理解决?
18.你进行单元测试了吗?怎么测的?mock框架?
19.压测,cpu内存漂升,怎么排查
20.涉及高精度技术的类用哪个?
21.你平时是怎么学习一个新技术的?遇见一个技术要有人带还是说自学可以搞定?
总结:
大概20题左右把,基本都是他问把。然后自己答题,有几题答了一半,就说可以了。可能表述还是比较啰嗦把,比如为什么使用分布式架构。我答题是从架构演变单体架构说到分布式,举出他们各种的问题啥的。所以答的久一点有点啰嗦。背了一段时间的题目,然后也梳理下还是有点作用。大多都能答出来。面试过程还是蛮轻松的。



