三面阿里技术Java岗,已拿offer,看看这些面试题你能答出多少

前言

面试职位:Java后端开发工程师

在面试前三面真的有点急促,一周内就面完了三次面试,接着就开始无尽的等待,整整等了三周左右,终于完成了四面和HR面。整个过程还是比较曲折的,技术面试还是挺考察技术深度的。现在已拿到offer。

面试问题如下:

一面(主要看基础):

  1. 先自我介绍,讲讲自己基础掌握情况,以及项目经历

  2. 平时会用到哪些数据结构?

  3. 链表和数组的优缺点?

  4. 解决hash冲突的方法有哪些?

  5. 讲讲自己对HashMap的理解,以及和Weakhashmap的区别?

  6. 你刚才讲的是JDK1.7版本的实现,知道JDK1.8做了哪些改动么?

  7. 你们在微服务中用RPC通信还是REST?

  8. RPC和HTTP的关系是什么?

  9. 谈谈什么是HTTP的长连接和短连接?

  10. TCP的三次握手和四次挥手,以及为什么要三次握手,而不是二次?

  11. TCP 有哪些状态,相应状态的含义?

  12. 并发包中锁的实现底层(对AQS的理解)?

  13. 乐观锁和悲观锁的理解及如何实现,有哪些实现方式?

  14. SynchronizedMap和ConcurrentHashMap有什么区别?

  15. 如何使用阻塞队列实现一个生产者和消费者模型?

  16. 简述一下Java 垃圾回收机制?

  17. 如何判断一个对象是否存活?

  18. 什么是tomcat类加载机制?

  19. 类加载器双亲委派模型机制?

  20. 让你评价一下你自己?

二面(数据库):

  • 依然是介绍自己

  • 数据库的高可用架构是怎么样的?

  • 如何保证数据库主从一致性?

  • 知道mysql的索引算法吗?

  • 为什么mongodb的索引用了B树,而mysql用B+树?

  • 用mysql过程中,有遇到什么问题么?

  • 生产用的是哪种事务隔离级别,为什么?

  • 谈一谈你对微服务架构的理解?

  • 用过哪些RPC框架,讲讲他们优缺点?

  • 用过docker吗,对容器了解多少?

  • 三面(偏架构方面):

  • 介绍一下自己,讲讲项目经历

  • 项目中微服务是怎么划分的,划分粒度怎么确定?

  • 在实践微服务架构中,有遇到什么问题?

  • 在关于微服务间数据一致性问题,是如何解决的?

  • 为什么不用其他的MQ,最终选择了RokcetMQ?

  • 为什么RocketMQ没有选择ZooKeeper,而是自己实现了一个NameServer集群?

  • Zookeeper在选举的过程中,还能对外提供服务么?

  • 对Paxos算法了解多少?

  • 如果让你来设计一个春晚抢红包架构,你会怎么设计?

  • 有什么想问我的?

  • (HR面):

    聊人生谈理想,HR很ncie,主要交流为什么选择来阿里,未来的打算职业规划以及待遇等,交流挺愉快。

    面试小结:

    技术基础必须扎实:算法、数据结构、操作系统等,蚂蚁金服面试对技术的基础非常重视,基础扎实的同学有利于在前两轮突出重围。

    技术宽度:主要集中在高并发、多线程、分布式架构,大以及常用中间件(缓存等)的选型和比较。

    技术原理深入:重点还是提前准备好JVM、多线程高并发这块。

    参与的项目总结:你需要清楚你所做项目的关键细节、优化、特点、原理。

    很多所用第三方库&中间件等的原理,即使你不知道,也要有自己的想法能够说出如何代替实现,比如单点登录的替代方案。

    最后,千万不要倒在HR面试环节,避重就轻是重点,特别是优点和缺点,如果问到你的规划是什么,请记得一定告诉HR你想成为一名优秀的技术专家!

    资料获取方式:转发和评论这篇文章,点击此处   即可打包带走所有资料~

    分享一波我的面试宝典

    21天啃完283页的pdf文档

    Java部分:Java基础,集合,并发,多线程,JVM,设计模式

    数据结构算法:Java算法,数据结构

    开源框架部分:Spring,MyBatis,MVC,netty,tomcat

    分布式部分:架构设计,Redis缓存,Zookeeper,kafka,RabbitMQ,负载均衡等

    微服务部分:SpringBoot,SpringCloud,Dubbo,Docker


    资料获取方式:转发和评论这篇文章,然后关注小编,点击此处  即可打包带走所有资料~

    2022年一线互联网企业350道面试答案整理

    1. 性能优化面试专栏

    2. 微服务架构面试专栏

    3. 并发编程高级面试专栏

    4. 开源框架面试题专栏

    5. 分布式面试专栏



    资料获取方式:转发和评论这篇文章,然后关注小编,点击此处  即可打包带走所有资料~

    1、面试文档专题整理

    既然是要面试,那么就少不了刷题,我自己是刷了不少面试题的,所以在面试过程中才能够做到心中有数,基本上会清楚面试过程中会问到哪些知识点,高频题又有哪些,所以刷题是面试前期准备过程中非常重要的一点。

    根据自身面试经历整理以及不断收集的(珍藏版)

    相关的电子书、底层源码


    结束语

    对于大厂面试,我最后想要强调的一点就是心态真的很重要,是决定你在面试过程中发挥的关键,若不能正常发挥,很可能就因为一个小失误与offer失之交臂,所以一定要重视起来。另外提醒一点,充分复习,是消除你紧张的心理状态的关键,但你复习充分了,自然面试过程中就要有底气得多。

    以上内容中所有的学习资料、面试资料,均可以免费提供,希望大家金三银四面试顺利,拿下自己心仪的offer!

    资料获取方式:转发和评论这篇文章,然后关注小编,点击此处  即可打包带走所有资料~

全部评论

相关推荐

06-25 09:33
厦门大学 Java
球球别拷打俺了:现在日常估计没啥hc了,等到八月多估计就慢慢有了。双九✌🏻不用焦虑的
投递快手等公司10个岗位
点赞 评论 收藏
分享
07-25 11:26
清华大学 Java
打开电脑,思绪又回到了7月份刚开始的时候,感觉这个月过的如梦如幻,发生了太多事,也算是丰富了我本就是平淡的人生吧太早独立的我习惯了一切都是自己做决定,拥有绝对的决定权,而且永远不会听取别人的建议。我就是那个恋爱四年出轨的男主啦,感觉既然在牛客开了这个头,那我就要做个有始有终的人。从我出轨到结束再到和女朋友和好如初真的太像一场梦了,短短的一个月我经历了太多,也成长了很多,放下了那些本就不属于我的,找回了那些我不该放弃的。我的人生丰富且多彩,但人不能一直顺,上天总会让你的生活中出点乱子,有好有坏,让你学会一些东西,让你有成长。我和女朋友的恋爱四年太过于平淡,日常除了会制造一些小浪漫之外,我们的生活...
段哥亡命职场:不得不说,我是理解你的,你能发出来足见你是个坦诚的人,至少敢于直面自己的内心和过往的过错。 这个世界没有想象中那样非黑即白,无论是农村还是城市,在看不见的阴影里,多的是这样的事。 更多的人选择站在制高点去谩骂,一方面是社会的道德是需要制高点的,另一方面,很多人不经他人苦,却劝他人善。 大部分的我们,连自己生命的意义尚且不能明晰,道德、法律、困境,众多因果交织,人会迷失在其中,只有真的走出来之后才能看明白,可是没走出来的时候呢?谁又能保证自己能走的好,走的对呢? 可是这种问题有些人是遇不到的,不去追寻,不去探寻,也就没了这些烦恼,我总说人生的意义在过程里,没了目标也就没了过程。 限于篇幅,没法完全言明,总之,这世界是个巨大的草台班子,没什么过不去了,勇敢面对,革故鼎新才是正确,祝你早日走出来。查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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