前言

前几天收到一位粉丝的投稿,他之前去面了美团 (一名本科毕业非计算机专业的程序员),成功入职。一共三面,过程虽然有点艰难但是总的来说还是比较顺利的,接下来给大家分享一下面经。

 

一面

1.自我介绍和过往工作经历(介绍一下项目流程,由于之前没有任何面试经验,没有get到面试官的点,答得不太好,面试官应该是想让介绍一下怎么设计你的系统框架、用到哪些技术)

2.乐观锁和悲观锁,应用场景有哪些?什么情况下会发生死锁,怎么处理死锁?

3.HashMap的原理,由此延伸问红黑树是什么,Hash冲突怎么解决?

4.说一下排序算法内容。

5.如何保证缓冲区和数据库之间的强一致性(使用加锁)

6.字符串中句子的反转(比如ABC DEF,输出DEF ABC)(很简单,可以先反转整个字符串,然后反转单词,或者先将句子切分为单词,然后反转)

7.设计一个分布式负载均衡缓冲系统,如何快速定位到是那个服务器(使用key分段、一致性hash)

8.Spring Mvc的执行流程。

9.多线程用过吧?写过一些demo,那你说说多线程之间的通信,回答用wait sleep notify notifyAll配合使用 然后就问 wait和sleep一样吗?

 

二面

1.说一说在浏览器中输入一个url后,直到浏览器显示页面的过程中发生了什么(我主要说了DNS,然后他有接着问了DNS的细节,然后就是ARP路由,然后服务器处理,返回,浏览器呈现,获取html中的依赖资源)

2.谈谈Java的垃圾回收机制。

3.谈谈三次握手四次挥手 以及为什么是三次 为什么是四次 一定要是四次吗?

4.项目里用到了Redis 为什么用它?

5.如果让你设计一个大型网站,你觉得哪些东西是需要考虑的 为什么?

6.Linux下如何查看网络端口状态(netstat),如何查看内存使用情况(top)

7.数据结构学的如何?算法这块怎么样,简单说说吧(自由发挥)

8.用过动态代理吗?

9.请描述避免多线程竞争时有哪些手段?

10.请简述HTTP的5个常用Method及其含义,以及5个常用Status Code及其含义?HTTP与HTTPS的区别是什么,简述一下HTTPS的实现原理。

11.谈Spring的事物管理。

12.如果线上某台虚机CPU Load过高,该如何快速排查原因?只介绍思路和涉及的Linux。

 

三面

1.自我介绍+项目

2.说说深入理解JVM中印象最深刻的章节(我说了JVM内存模型,垃圾回收和类加载)

3.讲下数据库优化(索引、数据库结构优化,然后牵扯出红黑树,让手撕红黑树,讲了下大概实现)

4.Spring的过滤、Spring Mvc的分层 以及问了些常用的注解。

5.你觉得你哪一块只是最熟悉(我说了Java的基本数据结构和算法这块)

6.Spring的优点?Spring AOP的原理?Spring如何实现解耦合?

7.有没有用过Hibernate、mybatis、git

8.对‘a’,‘b’,‘c’,‘d’排序,排成指定的顺序

9.一个圆环上有n个点 a从任意一个点出发 到达下一个点都需要Ag能量,每一个点都有cg能量补给,假设a最初有Bg能量,问a最初Ag能量为多少能保证a绕圆环一周

10.你在项目中做了以图搜图,你是怎么实现的,谈谈你的处理过程?

11.前端会不会,Ajax是什么,Ajax实现原理

12.Java IO,NIO,Java中有没有实现异步IO

13.HTTP有没有状态,我说无状态,怎么解决HTTP无状态

14.分布式事务框架,2PC 3PC的过程,为什么2PC用的比较多,自己实现过么,对比过他们的性能不

15.学过那些框架知道那些,分别怎么用的?

16.JVM垃圾回收算法,垃圾回收有哪些算法,g1的回收算法过程,遇到过垃圾回收的问题么,怎么解决的?

 

HR面试

1.why投mt

2.why投外卖配送bu

3.自己最想从事什么行业

4.三个词语概括自己的性格

向面试官提问

这里其实不是每个人都会被问到这块,看情况的。

  1. 首先问了待遇之类的(巴拉巴拉一堆,面试官也还算有耐心)
  2. 加班情况怎么样(面试官笑了笑,但是在我的接受范围内,还行,平时也还好,加班不多)
  3. 说下项目做了些什么,架构之类的,用到的哪一些比较多。
  4. 你们是什么部门(他说是核心部门,大数据研发)
  5. 最后没啥问题了,他让我保持电话畅通。

 

总结

我这边整理了一份:Spring系列全家桶、Java的系统化资料:(包括Java核心知识点、面试专题和20年最新的互联网真题、电子书等)有需要的朋友可以扫描小编的二维码即可获取。

针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

Java核心知识笔记

 

 

 

Java面试宝典

Java集合面试题

 

多线程/并发面试题

 

Redis面试题

 

Spring面试题

 

MyBatis面试题

 

Spring Boot面试题

 

RabbitMQ面试题

 

算法面试题(字节面试必问)

 

 

 

美团面试题(其他大厂的也有)

所有的面试题目都不是一成不变的,特别是一线互联网种大厂,上面的面试题只是给大家一个借鉴作用,最主要的是给自己增加知识的储备,有备无患。

最后,有想要这份Spring系列全家桶、Java的系统化资料:(包括Java核心知识点、面试专题和20年最新的互联网真题、电子书等)有需要的朋友可以扫描小编的二维码即可获取