第三轮是现场面试,这一轮面试以解决方案为主,前后大概约1小时20分钟。
- 缓存穿透,让我设计一个防止缓存穿透的解决方案,简单的就是存null值,但肯定会深究,可以结合布隆过滤器,设计分布式系统,里面又会问到流量分发到具体过滤器服务的方式,比如一致性hash算法,怎么调用?比如dubbo直连、等等细节会边说边问。
- 有没有做限流,设计一个侵入性最小的限流服务。
- 项目中碰到的问题,最好说框架本身问题,能体现个人能力,也避免问题太低级被面试官看low,刚好之前有发现一个dubbo的bug,所以这问题应该回答的还可以。
- 为什么换工作,每轮都会问,这个得想好。
第四轮:
交叉面,项目为主,时间大概为40分钟,问的内容不多,这个阶段我个人的状态比较放松了,与面试官交谈的方式也自然了许多。
- 介绍最熟悉的项目,业务上有没有什么优化点;和同行业其他公司的差距和优势(估计是P7的标准问题,总之我回答得不是太好)
- Dubbo服务调用过程
- NIO、BIO区别,NIO解决了什么问题,Netty线程模型(源码拷问)。
- MQ相关
第五轮:
这轮面试真的让我比较为难了,面试官问什么问题都会问到具体的数值,状态又变紧张了,如履薄冰啊。
- 项目介绍
- 听到说做了限流,限流标准(并发数? qps?并发数和qps关系?说出了5种限流方案和对应算法原理)
- dubbo调用端怎么在jvm中生成对应服务?dubbo服务端和调用端超时时间设置和区别、dubbo长连接。
- mysql行锁最大并发数?(秒杀项目指出)
- 设计秒杀系统,我说的异步的方式,会问怎么优化?改为了同步的方式,异步和同步区别? 然后我也问了阿里那边
- 碰到哪些技术难点?怎么解决?有没有参考其他大厂?其他大厂方案什么样的?有没有关注阿里这边最新的技术?
- 刚刚的秒杀系统,会涉及到多个库表的更新,分布式事务怎么解决,我说的消息最终一致性,异步?有没有更好的方案?同步TCC方式,TCC方式原理?(三个阶段的具体实现)
第六轮:
总监面,主要是自我介绍和项目介绍,聊天的方式比较舒服,大部分是对你的整体价值观做宏观的把控(比如上进心,责任心,心态,工作激情等,差不多15分钟就结束了。
- 说了自己的项目
- 主要用到的架构,做了些什么?
- 比较复杂的业务逻辑讲一下?
- …
第七轮:
HR面,阿里的HR很不一样,无论是气质还是谈吐都让人佩服,问的问题也很有针对性,最后告诉我会电话反馈结果。
- 自我介绍
- 如何学习新技术?
- 如何团队合作的?
- 遇到很难的问题,如何解决?如何突破?
- 职业规划
- …
阿里7轮面试经历完整版(含答案和解析):
由于文章篇幅有限,完整版的面试题和答案解析就整理在PDF文档里,如果你需要完整版的,请查看文末!
友情提醒:下部分涉及到的内容比较多,更多资料整理在文档里,需要的朋友转发后直接加入我的扣扣学习交流群免费领取:301119372,或者扫码添加助手小姐姐微信领免费领取!
直接扫码添加
面试阿里之前,我流了多少汗?
1.梳理知识
一般的面试,会被问到JVM原理、多线程、数据结构和算法、高并发、设计模式等内容,这都是一名普通Java开发人员的知识结构,那么阿里P7肯定是需要具备更多的知识树,需要掌握更全面的知识体系,所以就需要对知识进行一个系统的梳理了。
对标P7,我梳理的知识体系如下:
- 筑基必备技能:并发编程,JVM,网络编程与高效IO,Mysql,Tomcat
- 设计思想与开源框架:SSM(Spring+SpringMVC+MyBatis)
- 性能直线提升架构技术:ZK,Nginx,RabbitMQ,RocketMQ,Kafka,elastic
- 高效存储让项目性能起飞:Redis,MongoDB,MySQL,Mycat
- 分布式扩展到微服务架构:SpringBoot,SpringCloud,SpringCloud Alibaba,Docker,K8S
2.复习知识
工作这么久要重新再去面试肯定是要将自己的知识储备重新拿出来,要把各个知识点复习到位,需要通过各个方式,选择自己最习惯的。无论是读电子书籍还是观看视频都是可以的,但要记得做好自己的学习笔记,能够起到总结的作用,再去复习起来就特别清晰了。
电子书籍:
电子书籍
学习笔记:
Redis学习笔记
Vue
-
什么是MVVM?
-
mvvm和mvc区别?它和其它框架(jquery)的区别是什么?哪些场景适合?
-
组件之间的传值?
-
Vue 双向绑定原理
-
描述下 vue 从初始化页面–修改数据–刷新页面 UI 的过程?
-
虚拟 DOM 实现原理
-
Vue 中 key 值的作用?
-
Vue 的生命周期
-
Vue 组件间通信有哪些方式?
-
vue 中怎么重置 data?
-
组件中写 name 选项有什么作用?
-
Vue 的 nextTick 的原理是什么?
-
Vuex 有哪几种属性?
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】