本人工作经验5年,2019年10月没准备找过一段时间工作,最终开的薪资都不愿意给,最后有一家工资还可以不过最后要驻场(外包嘛),后面没去就做了份兼职。为了年后找工作就打算年前试水,面试两家一个中小型公司100~500人的A公司,一家大厂几千人的公司B公司。A公司两轮技术面试通过HR面试通过最后老总面试也过了发offer。B公司电商项目3轮技术面试一轮hr面试也过了,准备发offer,问了一下加班情况,Q1 Q2加班会比较多、可能经常9 10点的样子吧,由于本人从家过去要一个小时,所以长期这样会比较累,所以拒绝了。
A公司面试题:
B公司面试题:
1.jvm处理过的线上问题说一下?
2.springcloud用过哪些组件?
3.最有成就感的项目及负责的内容?
4.mysql索引结构?
5.mysql创建索引和使用索引的注意事项?
6.springmvc流程?
7.redis有哪些淘汰策略?
8.分布式事务解决方案?
9.线程池的创建使用哪种方式?
10.ThreadPoolExcutor的各个参数解释一下?
11.常用哪些队列?
12.怎样在不加锁的情况下在一个队列中插入和查询数据保证准确性。
13.写一个100%死锁的例子。
14.怎样防止超卖?
15.怎样扣减库存?
16.springboot-starter自定义步骤。(简历写了看过部分springboot源码)
17.springboot怎样加载tomcat。(简历写了看过springboot加载tomcat的流程)
18.让你设计一个mybatis类似的框架你怎样设计?
19.mybatis的处理数据的流程。(简历写了看过mybatis源码)
20.redis缓存穿透、击穿、雪崩是什么,解决方案是什么?
21.zuul1、zuul2有什么区别?跟gateway比有什么区别?
22.mysql的隔离级别。
23.springAop说一下原理。
24.ConcurrentHashMap的结构,怎样保证线程安全?
25. class文件加载流程及自定义加载器的实现。
26.怎样设计一个秒杀系统?
27.在一个直播系统中,主播按完按钮之后,有500w个100 50 20 0的钻石会被用户抽到,随着数量的减少需要调整概率保证公平性,尽量让用户都能抢到,设计一个高可用、可扩展的系统怎么设计?
面试题收集了本人看过的比较好的博客和最近整理的面试题及部分答案。