记第一次面试阿里

    结论:一面二面过了,挂在第三面。

    一面 2020年5月18日8点-8点20分。5道题:

1.jvm内存模型,类在什么情况下会被回收?
2 如何基于aqs实现读写锁,谈谈自己的想法?
3 线程池原理?
4 类加载机制,如何破坏双亲委派模式?
5、给你一台8核16g服务器,你会给你的应用程序设计多少个线程,为什么这么设计。如果是io密集型的呢?如果是cpu密集型的呢?

    二面 2020年5月18日21点39分-23点48分。3道线上题+聊项目:

1.随机输出1-1千万的不重复的数。要求:代码不超过10行,时间少于200毫秒
2.随机输出1-1千万的不重复的数。要求:在想一种写法,代码行数不限制,时间少于700毫秒
3.一个maven工程下有三个模块:business,common,client。business依赖comment和client,comment依赖client,comment不依赖business,
  请在client包中定义一个接口,在business中定义两个实现类,comment中定义一个工厂。
  要求:做一个工厂模式,可以根据参数获取到不通的实现类
  注意:是不同模块,模块直接的依懒性要正确。
4、聊聊项目的难点,对项目有什么业务贡献和经济贡献
  (这里我说了做管理后台的,单表数据超10亿级别。然后说了下优化过程 1、count总数优化。2、查询业务优化,不查询总数。 3、es同步。 4、分库分表方案,我这里说的是按时间字段,多台机器同步。原先的服务既往单表查,又按分库分表插入,
   然后面试官问我如果一个user表没有时间字段,而且每次不能新增2倍的服务器,每次只给你三台,你会怎么做? 我就和他扯了一下想法,比如预先算好下一次扩容会落在那台服务器上,然后怎么取模等等。最后和面试官闲聊了一下就过了)

    三面 2020年5月19日20点00分-20点20分。聊项目


    首先为什么想面试阿里呢?因为目前公司一同事A刚好有个朋友在阿里,然后A就问我想不想试一下,我就答应了。但是也没有准备什么,想想就答应了。第二天就接到了阿里的内推邮件,大概就是等电话约时间面试。第三天接到电话约面试。5月18日那天是晚上面试的,面试官就问了上面的5个题目,也许是忙还是什么的,说完以后说觉得还不错,就直接给过了。让我回家准备机试。机试题目也不难,在一个在线网站上做的,面试官可以同步看到你敲代码的过程。机试完以后面试官随便问了下项目,然后就给过了,然准备好三面。三面的面试官直接然介绍项目,本人瞎介绍了20分钟左右,期间面试官也问了一些问题。然后面试官问我有什么想问的没,我就问了在阿里是怎么自我学习的。最后就没有最后了。
    总结下就是阿里的面试并不难,基础知识掌握好,项目就算没有亮点也编的像一点- -!为什么挂了呢,自我总结是项目讲的太烂,没有亮点;而且面试的是国际化中台部,需要英语很好,而笔者是个英语渣渣~ ~这里就不讲面试题的答案了。这要写出来起码几千字,不想敲- -

猜你喜欢

转载自blog.csdn.net/qq_30752451/article/details/106522717