手起刀落,连斩获阿里(四面)+ 字节(四面)+ 美团(三面)三家一线大厂 Offer!
阿里面试经验分享(电话面)
一面(电话,61 分 47 秒)
自我介绍
项目来历
MySQL 和 MongoDB 的区别
负载均衡的实现,有没有使用过 nginx?
为什么数据库使用索引查询速度会那么快,是怎样实现的?
除了 mysql 这种关系型数据库外,还有哪些数据库?
TCP 和 UDP 的区别?
一次 HTTP 的完整请求过程(从网络协议的层面来阐述)?
面向对象语言的特点?
hashmap 和 hashtable 的区别?
JVM 的内存模型,回收机制
老板有 2000 元给我和同学分钱,首先由我提出分钱方案。如果同学不同意,则总额变为 1000 元,并由同学提出分钱方案。如果这时我不同意,则俩人各拿 100 元。请问一开始我应该怎么给出分钱方案?
假设有一个线程在取队列中的消息,怎么停止这个线程?
读过哪些源码?
项目中遇到过什么难题
印象深刻的几次学习经历
有什么问题想问的?
二面(电话,82 分 33 秒)
springboot 或者 spring 的加载流程
对 IOC 和 AOP 的理解
jdk 和 cglib 实现的 AOP 实际上会在内存生成动态代理对象,还有什么其他办法实现 AOP?经提示答出 AspectJ 以及实现原理
Spring 中的对象的作用域
Singleton 对象引用 Prototype 会发生什么
项目中怎样使用微服务?
两个服务之间调用的流程
rpc 与 http 的区别
设计 rpc 协议需要注意什么
项目中如何使用 kafka
消息队列的使用场景
kafka 如何保证消息投递的可靠性
聊聊 jvm,内存分布,垃圾回收
创建类的流程,类加载流程
了解我做过的项目的复杂度
三面(电话,30 分 57 秒)
问项目,根据项目问问题
用过数据库索引吗?介绍如何使用,何时使用?
B 树、B+树、红黑树数据库分页查询,如何分页,怎么实现?
四种隔离级别,虚读和幻读什么意思发生在哪?
使用的 MySQL 版本,和之前版本的区别?
1.7 和 1.8 的 JVM 有哪些不同?
垃圾回收算法,CMS 垃圾回收器简单介绍
ConcurrentHashMap 的 size()函数 1.7 和 1.8 的不同,或者介绍一下如果是你如何设计?
排序算法,介绍一下快速排序,快速排序时间复杂度,是不是稳定排序,介绍几种你所知道的稳定排序算法
UDP,TCP,HTTP 介绍一下,OSI 七层模型
Redis 支持的数据结构
HR 面(电话,14 分 47 秒)
为什么来阿里?
有什么优势能让你来我们部门?
业余有什么爱好?
解决难题的经历?
遇到过什么挫折?
选择上海还是杭州?
字节跳动面试经验(一面电话面,二面视频面,三面、HR 面现场面)
字节跳动一面(电话面,40 分 34 秒)
自我介绍
手写代码:有序链表合并
聊聊项目 怎么个秒杀法
计算过 qps 吗 qps 是什么
场景题:设计表结构 怎么实现用户量大的情况下快速查询用户的粉丝数/关注数?
聊聊 IOC
IOC 加载过程
wait 和 sleep 的区别
synchronized 底层原理 是可重入锁吗?
CAS 原理
怎么解决 ABA 问题?
HashMap 数据结构 线程安全吗?
举个例子 HashMap 怎么线程不安全?
聊聊 B 树和 B+树 数据结构是什么 查询复杂度是多少?
字节跳动二面(视频面,37 分 46 秒)
场景 1:硬盘 1T,内存 2G 有很多数据 id, 有重复的 id 怎么找到重复次数最多的 Top10
场景 2:网页中有一个用户输入框,输入完文本后会拿到一个 url,然后关闭页面。
用户下次再进入页面时根据上次的 url 可以看到上次输入的文本 怎么实现这个功能,把你能想到的说出来
数据库索引怎么建立,把你的认识说出来,后来我引到了聚簇索引,索引覆盖
解释什么是索引覆盖?
数据库隔离级别有哪些?
举个不可重复读的例子
除了设置数据库隔离级别,还有什么方法可以解决不可重复读 ?(后面提示说这个有个专有的名词)
讲讲滑动窗口的过程 滑动窗口在哪里用到?
手写代码:有序链表合并的升级版,合并 n 多和有序链表,并计算时间复杂度
字节跳动三面(现场面,53 分 21 秒)
你如何理解后端开发
有哪些后端开发经验,做了什么?
介绍 HashMap ,与 TreeMap 区别
用 HashMap 实现一个有过期功能的缓存,怎么实现?
如果需要多个线程,那怎么保证线程安全?
如果把数据都放进 Map ,会占用多大内存?
平时怎么学习新知识?
最近看了什么书?
对于你的商城项目,如果对于同一个分类有多个卖家,如何设计数据表?
对于高并发的系统,如何设计架构才能避免瞬间数据库收到瞬间高流量的冲击?
如果你用 Redis 实现的话,可能会出现商品超卖的问题,那么你是如何结果商品超卖问题的?
一般在支付的过程中,用户支付、账户被冻结、订单的生成、卖家库存减少、卖家收到钱,这是个一系列的过程,那么你如何设计实现分布式的事务?
如果用户在提交订单之后向消息队列发送消息,这个时候网络出现异常,消息队列并没有接收到用户发送的消息怎么办?
问 GitHub 账号
两个鸡蛋问题,如果有 100 层楼,如何判断出恰好在第几层楼摔坏?
字节跳动 HR 面(现场面,21 分钟 48 秒)
为什么来头条
作为项目负责人,完成了哪些工作
实习时长、什么时候来
美团点评面试经验分享(非常干脆,3 面直接顺利通过)
美团一面(电话面,45 分钟 37 秒)
介绍项目
分布式锁的实现
分布式锁过期解决
前缀树是什么 前缀树的使用场景
分布式数据库主从复制
MySQL 死锁发生的原因和解决
MySQL 分别建立索引 a,b,c ,语句 select ...where b=x,c=x,a=x 能不能用到索引,建立联合索引能不能用到,a=x,b>x,能不能用到,用到几个索引?
B 树和 b+ 树的区别 b+ 树的优点
Linux cpu 满了怎么排查?
怎么查看占 cpu 最多的线程
Linux 怎么搜索文件中的字符串,写到另一个文件中
liunx 网络相关命令
如何判断链表是否有环
Java = 和 equals 的区别
Java contentMap 和 HashMap 什么区别,线程安全怎么实现
HashMap 怎么解决哈希冲突,哈希冲突还有什么解决方法
Java 运行时异常和检查性异常
Java 类加载
什么是泛型 泛型的使用场景
面向过程和面向对象
多态是什么 父类如何调用子类的方法
问我看了啥书(设计模式,图解 HTTP,Modern PHP...被打断然后开始问设计模式)
单例模式的用途 静态内部类实现单例模式的方式
工厂模式的用途
策略模式的用途
Get 和 post 请求的区别
网页请求的整个过程
说说自己的优缺点,对缺点的改进?
美团二面(现场面,57 分钟)
上来先写代码,两个线程交替输出 1-100
JAVA 锁机制(synchronize,ReentrantLock 等)
乐观悲观锁
sql 语句慢查询如何调优
主键索引和普通索引区别
项目用的什么数据库,什么引擎,底层是什么
说一下 B+树和 B 树
B+树索引都能查到叶子节点么
mvcc 多版本并发控制
隔离级别了解么,说一下
JVM 调过么,用的什么垃圾回收器(G1)
讲一下新生代老年代(这里给我挖了个坑,等我说完,告我 G1 不分新生代老年代,我还没学到啊可惜)
TCP,UDP 区别
输入 URL 会发生什么?
Linux 常用操作
线程进程区别
用过什么中间件或者消息队列么?
有什么问题想问我?
美团 HR 面
自我介绍,抓住介绍的点让你详细说说
其他的面试流程?
考虑去哪里工作,北京是唯一选择吗?
为什么来美团,从哪里知道美团技术团队?
以上的面试题全部都是有答案的,而且还有多份面试题,以及答案,和一整套的大厂面试真题,都是可以免费领取的,需要免费领取的朋友,麻烦帮忙一键三连一下文章,然后加小助理 VX:wjj2632646 免费领取!
需要免费领取的朋友,麻烦帮忙一键三连一下文章,然后加小助理 VX:wjj2632646 免费领取!
版权声明: 本文为 InfoQ 作者【Java架构追梦】的原创文章。
原文链接:【http://xie.infoq.cn/article/c3a17c9f87aca2f90d99acce9】。未经作者许可,禁止转载。
评论