阿里秋招全程1.2.3.4.5+HR记录
拿到offer后我来写一下我的经历吧,先上面经:业务中台事业部:
一面,7.6,全程一个小时左右:
一上来先说自己实习做的项目,然后面试官开始问项目细节,然后又开始说学校里做的项目,这两个加起来就快四十分钟了,因为每个人项目不一样就不介绍跟项目关系太大的,说几个通用型问题
1:为什么你的缓存更新策略是先更新数据库后删除缓存,讲讲其他的情况有什么问题
2:两个线程打印1.2.3.4打印到100怎么实现,这里刚开始说的是加锁用生产者消费者来做,后来说了semaphore,感觉后面的才是面试官想要的答案。
3:spring的aop的实现方式,aspectj和jdk动态代理,cglib动态代理,讲了下实现的原理
4:hashmap实现原理,把知道的都说出来。
二面,7.10,也是一个多小时,一来还是说的实习项目,然后直接问问题
1.缓存的使用策略和从底层数据库开始往上各个层级中缓存的使用,把你知道的都说出来,这个问题刚开始有点懵逼,后来就从数据库底层原理开始说起,然后讲了缓存的各种使用策略,和这些策略避免的什么问题,这里讲了好久,边说边被追问,里面涉及到各种缓存击穿,缓存穿透,缓存雪崩,互斥锁等内容
2.假如双十一等一些促销有高并发访问量要来访问我们的数据,怎么样做到可靠的服务,这个问题我说了很多处理高并发的东西,但是好像不是最终答案,好像是问题没听太明白,不过不影响
接下来是项目,也是深挖了好多东西,怼了半天,
通用的问题还有:
1.jvm虚拟机老年代什么情况下会发生gc,给你一个场景,一台4核8G的服务器,每隔两个小时就要出现一次老年代gc,现在有日志,怎么分析是哪里出了问题
2.springboot和spring的区别
3.你是怎么保证你的代码质量和正确性的
三面,7.20:没有任何基础知识,上来直接问项目,项目问了很多,然后从项目引申到具体的业务场景:
1消息队列的生产者消费者中消费者没有收到消息怎么办,消息有顺序比如1.2.3但是收到的却是1.3.2怎么办?消息发过来的过程中损坏或者出错怎么办
2下单过程中是下订单减库存还是付款减库存,分析一下两者的优劣
3 高并发场景的限流,你怎么来确定限流限多少,模拟场景和实际场景有区别怎么解决,动态改变限流阀值遇到的问题
总的来说三场面试都没什么我那看了那么久的基础知识的用武之地,主要还是看你怎么能够把知识和实际情况能够结合起来,毕竟校招,考察的还是一个人的学习能力和一种思维
经过激烈的思想斗争,在HR面之前放弃了这个部门,转流程转到了蚂蚁,不过需要重新面试,内心简直煎熬
蚂蚁金服:
一面 7.24,可能是之前看了我的面试记录发现没什么基础性问题?反正这一面全程基础知识狂怼,我想扩展开来说点其他的都不给我机会。。。
1说项目然后项目都还没说完就开始下面的部分;
2 缓存是怎么使用的,里面存哪些东西,为什么要存这些东西,哪些高并发场景不能使用缓存;
3 公司数据量多大,并发量多高要用互斥锁解决缓存击穿;
4 http请求流程 ,三次握手四次挥手;
5 http报文头部是什么,为什么要有版本号,1.0,1.1,2.0的区别,2.0中的多路复用怎么实现会话的串行传输;
6 自己设计一个数据库连接池怎么设计;
7 线程池说一说;
8 阻塞队列不用java提供的自己怎么实现,condition和wait不能用;
9 拥塞窗口讲一讲,为什么要用慢启动算法;
10 jvm垃圾回收;
11 如果频繁老年代回收怎么分析解决;
12 CPU使用率100%怎么分析解决;
13 数据库索引原理;
14 怎么用原生的JDBC访问数据库;
15 算法 n个数找最小的k个数;
16 自己做项目过程中出现过乱码么,了解编码么;
17 liunx命令平时用的哪些,查看机器使用情况用哪个;
18 未来职业规划;
19 平时怎么学习的;
20 你有什么想问我的;
二面 7.30:
这一面全程是我在讲解自己做的项目,怎么系统性地进行优化的,相关的知识点怎么进行处理的,然后说了自己实习的收获和感悟,面试官就没继续问技术了,开始和我聊一些职业发展,如何看待蚂蚁金服等问题
HR面试 7.31:
1.实习收获
2.为什么选择回成都?
3.一些个人隐私情况
4.给了offer一定会来么?有没有面试其他公司或者已经有了offer?
还有一些常规的问题就是纯聊天的形式
8.7
HR又打电话来确认了意向,是否真的会来成都,明确了意向后表示希望叫我不要浪费精力投其他公司了。。。
转载自:https://www.nowcoder.com/discuss/89411
页:
[1]