阿里云 实习面经 二面

写在前面

这是本人去年找暑期实习时候的面经,java后端方向。之前面试的时候一直会做录音复盘,但是并未整理过面经,最近有uu私信想看一下,因此分享给大家,做个参考,希望可以帮助大家。以下是相关文章链接:阿里云一面阿里云三面秋招总结

面试时长

75min

面试形式

视频面试

面试内容

  1. 自我介绍;

  2. 项目介绍:参与了哪些项目,自己挑一个项目详细展开,介绍项目的创新点和难点,针对其中存在的问题有没有一些思考;

  3. 实习经历介绍:介绍下完成了哪些需求,业务流程,完成需求过程中遇到了哪些问题,如何解决的;

  4. Mysql相关:MyISAM和InnoDB的区别?(行级锁、事务、外键、崩溃后的安全恢复、MVCC、性能等)

  5. Mysql相关:索引的底层数据结构?为什么选择这样的结构?(B+树)

  6. Mysql相关:自己选择维度划分介绍有哪些索引类型?(按照底层存储方式角度划分:聚簇索引和非聚簇索引)

  7. Mysql相关:最左前缀匹配原则是什么?自己举例进行说明;

  8. Mysql相关:索引下推是什么?(在遍历过程中,对联合索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数)

  9. Mysql相关:事务隔离级别?InnoDB引擎的默认隔离级别?InnoDB引擎如何解决幻读?(读未提交、读已提交、可重复读、串行化)

  10. Mysql相关:你在项目中使用了哪些方式来对数据库查询进行优化?

  11. Spring相关:介绍下IoC和AOP?在项目中哪些地方有使用?(Mybatis)

  12. Spring相关:介绍下项目中和数据库有关的操作?在Spring中连接数据库进行数据插入操作时有哪些需要注意的地方?Spring中

    事务传播行为有哪些?你在项目中基于什么考虑使用的?(TransactionDefinition.PROPAGATION_REQUIREDTransactionDefinition.PROPAGATION_REQUIRES_NEWTransactionDefinition.PROPAGATION_NESTED);

  13. Spring相关:bean的生命周期?有哪些注入方式?(构造器、setter和属性注入)

  14. Spring相关:线程池有哪些核心参数?各自的作用?项目中如何使用的?(核心三参数:corePoolSizemaximumPoolSizeworkQueue

  15. 并发相关:进程、线程和协程的区别和作用?

  16. 并发相关:volatile关键字的作用?在保证线程安全的情况下实现单例对象的获取?(双重校验锁)

  17. 并发相关:synchronized关键字的作用?底层实现原理?和ReentrantLock的区别?锁升级及实现原理?(偏向锁->轻量级锁->重量级锁)

  18. Redis相关:有哪些持久化方式?AOF和RDB的底层实现原理?在项目中用的是哪种?基于什么考虑使用的?

  19. Redis相关:引入哨兵集之后,主从故障的转移过程?

  20. Redis相关:Redis是单线程吗?采用单线程为什么速度快?

  21. Redis相关:Redis阻塞的原因有哪些?出现阻塞后的排查以及解决方式?

  22. 算法题:Leetcode53 最大子数组和;

  23. 算法题:Leetcode146 LRU缓存。

总结

二面开始针对项目和实习经历的追问开始变得多了起来,而且会在听你介绍的时候针对其中的一些点展开追问,这个过程中会涉及到八股文的提问。所以,在准备项目的过程中,一定要好好想想项目用到了哪些技术,相关的知识点最好都多看看,这些在面试中都是极有可能会问到的。二面开始,面试官会更加看重你在做项目过程中的一些思考,比如遇到问题的解决方式和一些反思总结。因此,除了八股文外,还应该多思考下自己项目的亮点,最好有一些别人没有的创新点,这样会很有优势。在介绍项目的时候也可以简单说说你通过项目学到了什么,有哪些总结思考,以此来展示自己的学习能力。

PS:本来是给的一道算法题,估计看我写的很快,问我是不是做过,回答是之后又给了一道Orz。也许做题速度也需要稍微控制控制hhhhh。

#面经##实习##阿里云##暑期实习##牛客在线求职答疑中心#
全部评论
本篇二面面经讲解+学习资料指引:https://www.nowcoder.com/discuss/592128174994075648 需要的同学自取。 一面面经讲解+学习资料指引:https://www.nowcoder.com/discuss/590576768491216896 需要的同学自取。 感谢楼主分享,比较有参考意义,预祝顺利offer。
8 回复 分享
发布于 2024-02-27 23:39 四川
太强了吧
2 回复 分享
发布于 2024-02-26 21:45 上海
答案写的太简单了
1 回复 分享
发布于 2024-02-29 18:09 上海
佬太强了,想问下一共几面呀
1 回复 分享
发布于 2024-02-28 11:16 北京
牛!
1 回复 分享
发布于 2024-02-26 22:09 江苏
学习了
1 回复 分享
发布于 2024-02-26 21:36 四川
看来以后写题得慢点写了😂
点赞 回复 分享
发布于 2024-02-28 16:48 四川
求更新三面
点赞 回复 分享
发布于 2024-02-27 13:39 河南
你好,你的面试经历非常详细,看起来你准备得很充分。你对Java后端方向的理解很深入,对各种技术都有很好的掌握。你的面试经历对于其他求职者来说非常有参考价值。谢谢你的分享!
点赞 回复 分享
发布于 2024-02-26 21:31 AI生成

相关推荐

09-17 18:41
门头沟学院 Java
📍面试公司:小红书🕐面试时间:9.11 三天后挂💻面试岗位:后端开发❓面试问题:1.自我介绍2.实习拷打7.场景题:直播平台需要实时统计每个直播间的在线人数(观众进入/离开直播间时需要实时更新),并支持查询指定直播间的当前在线人数。要求系统在高并发场景下(如热门主播直播间同时在线100万人(高点直播间进房QPS=15W,离房QPS=5W),同时在线直播间10W)保证数据准确性和性能。设计思路。8.你说使用AtomicLong去进行加减,本实例的数据加减完之后存放在哪里?9.这样子的话单机的话应该是没什么问题的,如果是分布式场景多台机器应该怎么办呢?10.你说引入消息队列,这是在哪一个环节进行的?是用户进房/离房的时候发消息吗?11.用Redis的话你说用哈希去存,哈希存的是什么东西?12.假设你说的没问题,现在同时有10万个直播间,你用一个Redis的哈希结构来存,会不会有问题?用什么方法可以解决这个问题呢?13.在你的实习过程中,用户的权限应该也是落到Redis上的,是把所有用户都放到一个Redis的哈希结构吗?当时是怎么弄的?14.你说要把直播间做一个分片,根据直播间ID去做分片再落到不同的Redis,那为什么不直接把直播间ID作为Key呢?15.用Redis的哈希结构意义是什么?16.你说通过ID哈希取模再分片的方式,如果开始每一片的Redis key存了1000个用户ID,后期用户增多到100万,扩容怎么做呢?重新物理哈希吗?17.一个用户存一个Key的方式可行吗?18.针对10个分片,每个分片上1万个直播间,会不会存在什么性能问题?19.对redis集群有什么影响?20.如果有过载的情况,我们要怎么处理?21.手撕:跳跃游戏
查看17道真题和解析
点赞 评论 收藏
分享
评论
33
204
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务