写点什么

阿里、字节、美团我都面了,offer 也拿到了,全靠这份 Java 面试题!

作者:收到请回复
  • 2022 年 9 月 17 日
    湖南
  • 本文字数:1929 字

    阅读完需:约 6 分钟

没想到还真有人靠刷面试题刷进阿里的!

程序员小博:天哥,你知道吗?我拿到了三份 offer!

Java 巡小天:噢?公司怎么样?

程序员小博:公司不是怎么不怎么样的事,是实在太好了,做梦都没梦到过!

Java 巡小天:卖什么关子呀?难不成 BAT?

程序员小博:也就阿里、字节跳动、美团三家,还行吧?

Java 巡小天:WC?走狗屎运了?

程序员小博:啥呀?之前在你这里领到的那一堆面试题

我可是每一道题都啃了一遍,你那里面还有一些需要补充的地方,我就不说了...

Java 巡小天:诶?你这小子,忘恩负义!

程序员小博:那些地方我都没有做标记,这样吧,我把我在那三家大厂面试的经历给你,就当是感谢啦!

Java 巡小天:那还差不多,你确定好位置之后,我找你吃饭去哈!

程序员小博:好呀!诶,天哥,你说,我是去阿里好呢?还是去字节好呢?还是去美.....

Java 巡小天:嘀....嘀....嘀....

阿里 5 面

一面

  • 介绍自己比较熟悉的项目和项目中遇到的难点

  • springbean 生命周期

  • 谈谈依赖注入和面向切面

  • hashmap 原理和扩容机制

  • 常用并发包下的类

  • redis 持久化方式,为什么这么快?

  • 自己平时如何提升的,看书或者网站

二面

  • jvm 类加载机制,分别每一步做了什么工作?

  • jvm 内存模型,垃圾回收机制,如何确定被清除的对象?

  • 了解哪些垃圾回收器和区别?

  • 多线程相关,线程池的参数列表和拒绝策略

  • Jvm 如何分析出哪个对象上锁?

  • Mysql 索引类型和区别,事务的隔离级别和事务原理

  • Spring scope 和设计模式

  • Sql 优化

三面

  • fullgc 的时候会导致接口的响应速度特别慢,该如何排查和解决?

  • 项目内存或者 cpu 占用率过高如何排查?

  • concurrentHashmap 原理

  • 数据库分库分表

  • Mq 相关为什么 kafka 这么快,什么是 0 拷贝?

  • 小算法题

  • http 和 https 协议区别,具体原理是什么?

四面

  • 手画自己项目的架构图,并且针对架构和中间件提问。

五面 hr 面

HR 面基本就是问一些个人的问题,确定价值观啥的没问题就行了

后面就是确定薪资,福利待遇。什么时候可以到岗。

字节 3 面

据说那天有点紧张,记下的东西很少了

一面

机试(java 基础,算法,数据结构)。

二面

主流框架理解,原理,数据库架构,设计模式应用,网络基础知识,分布式问题分析,并发编程,锁知识,JVM 优化。

三面

1.拓展知识,项目中常见问题的解决。如,如何保证 redis 和 mysql 数据一致。如何解决缓存击穿问题。如何实现并发限流,JVM 锁和分布式锁的区别。

2.给一个业务场景,如何架构组件和数据库。1 到 1000 个数,如何按顺序存储。(二叉树问题)

美团 3 面

一面

面试主要是从一个系统设计出发,考察基础跟项目架构经验。美团相当重视基础问题(计算机网络、操作系统),主要是围绕一个系统优化来的,下面就几个重点提问:

1. 项目介绍(聊一下自己做的项目,前期了解了一下)

2.redis 相关问题

  • redis 主要能解决什么问题,聊一下你所知道的?

  • 聊一下 redis 高可用的相关。主要说一下哨兵集群的流程,包括选举、以及宕机之后的处理方案,以及 cluster 集群的工作流程

  • 聊一下 redis 哈希槽,为什么不用一致性哈希的方案?

  • redis 为什么这么快?

  • redis 跟 mq 的技术选型

3.mysql 相关问题

  • mysql 的事务隔离级别

  • 面试官描述了一个场景 #¥%……¥……%&*这种情况下你怎么优化 mysql,说说你优化的流程步骤

  • 你能想到什么优化 mysql 吞吐量的方案?

  • mysql 的底层数据结构?索引怎么存储的?

4.rabbitmq

  • rabbitmq 的优势,能解决什么问题?

  • 说一下 rabbitmq 怎么保证高可用的?

  • 聊聊镜像队列,怎么运作的?口述下代码?

5. 并发编程相关

  • hashmap 跟 concurrentHashMap

6. 接近一个小时的计算机网络基础、操作系统基础

二面

1. 再来一个场景¥%……¥#%……&*&%..优化 mysql,具体步骤,什么命令,怎么操作,比较详细。

2. redis 分布式锁的作用?什么场景用过?会有什么问题?(原子性的问题、误删锁、误得锁等等)怎么解决这些问题?(面试官提了几个场景,这块聊了半个多小时)

3. 详细聊了 rabbitmq 的工作流程。介绍下 rabbitmq 的组建,分别有什么类型,具体是怎么用的?口述代码。

4. redis 高可用。

5. 聊聊你了解的 RPC,dubbo 与 springcloud?(我因为没做过微服务项目,因此,问我,你觉得应该有什么功能,我从 springcloud 的角度回答的)

6. RPC 与 mq 技术选型,说下原因。

7. Spring 源码,我讲了事务的源码(撸了好几次了,比较熟悉)。

8. 手撸算法题两道。

9. 聊实习时间、地点,未来发展。

三面

HR(直接给录用函)谈笑风生....聊薪资,工作地点,还有一些要录入系统的基本信息,留了电话。

那份神秘的面试资料

小天万万没想到这么多的面试资料,小博那小子竟然能刷完?

这份面试文件涵盖了 Java 开发 1 至 5 年的面试常见技术问题,整体分为当季最新系列、大厂面试真题系列、技术系统分类系列三部分。(纯文字文本占内存 46.97MB)

  • 2020 年最新面试题




  • 大厂面试真题



  • 系统技术分类系列

JVM、MySQL、Mybatis、MongoDB、Redis、Spring、Spring boot、Spring cloud、Kafka、RabbitMQ、Nginx......




用户头像

加V:amchenzi-获取文中Java文档和面试资料 2021.06.08 加入

还未添加个人简介

评论

发布
暂无评论
阿里、字节、美团我都面了,offer也拿到了,全靠这份Java面试题!_Java_收到请回复_InfoQ写作社区