美团一面:
- 做一下自我介绍吧,简单说一下你的项目;
- 有遇到过内存泄漏吗?你们是怎么解决的?
- java的基本类型有哪几个?String是不是java的基本类型?String为什么要是final类型的?
- 反射机制的底层实现是什么?动态呢?动态的实现原理?
- hashmap了解吗?说一下hashmap相关的一些东西?hashmap是线程安全的吗?为什么是线程安全的?
- concureenthashmap了解吗?他是如何实现线程安全的?
- 你刚才说1.8基于cas?cas的ABA问题怎么解决?
- 说一下JVM的线程模型?这些区域都分别是干啥用的?
- 说一下java类加载器的工作机制?类加载在哪个区域进行的?
- 说一下java的线程模型?
- violate了解吗?它的原理是什么?violate是线程安全的吗?
- 保证线程安全的解决方法有哪些?说一说读写锁吧,读写锁的读
- 数据库的索引有哪几种?为什么要用B+树来做索引?组合索引和几个单个的索引有什么区别?数据库的大表查询优化了解吗?MVCC机制了解不?MVCC机制有什么问题?怎么去解决这个问题?mysql慢语句调优做过吗?说说你是怎么做的?
- redis了解吗?你说说怎么用redis实现分布式锁?
- spring中Bean的作用域,springMVC的controller是线程安全的吗?怎么去保证线程安全呢?
- 消息队列有用过吗?说说你怎么用的?
- 计算机网络了解吗?说一说TCP三次握手和四次挥手吧
- time_wait状态产生的原因是什么?,有什么危害?可以如何避免?
- 寻找旋转排序数组中的最小值
假设按照升序排序的数组在预先未知的某个点上进行了旋转。
( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。
请找出其中最小的元素。
你可以假设数组中不存在重复元素。
示例 1:
输入: [3,4,5,1,2]
输出: 1
示例 2:
输入: [4,5,6,7,0,1,2]
输出: 0
美团二面:
- 首先还是问项目。
- String,StringBuffer,StringBuilder的区别,为什么String是不可变的,StringBuffer和StringBuilder哪个是线程安全的,他们分别适用于什么场景。
- java类加载过程是怎么样的,说一下volatile。
- 并发包了解吗?假如几个线程之间相互等待,可以用哪个并发类来实现,他的原理是什么?
- 数据库慢查询优化了解哪些?
- 说一下spring容器的启动过程?
- 讲一下分布式锁,基于zookeeper实现和redis实现在性能上有什么差异?
- kafka如何保证不丢消息又不会重复消费。了解大数据相关的一些技术吗?
- 最后写了道题:跳跃游戏;
给定一个非负整数数组,你最初位于数组的第一个位置。
数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个位置。
示例 1:
输入: [2,3,1,1,4]
输出: true
解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。
示例 2:
输入: [3,2,1,0,4]
输出: false
美团三面:
- 分布式下redis如何保证线程安全?
- redis持久化的方式以及区别?
- zookeeper如何实现分布式锁、其他分布式锁怎么实现?
- kafka的架构,如何用kafka保证消息的有序性?
- 数据库的优化包含哪些?MySQL的优化,谈两个你优化的例子。
- 最有技术难度的项目,介绍下相关核心设计流程。
- 工作中,遇见了技术瓶颈无法解决,你的解决思路?
- 未来你的职业规划是怎么样?
美团四面:
- 自我介绍
- 项目介绍
- 怎么管理项目成员?
- 当意见不一致时,如何沟通并说服开发成员?举个例子
- 怎么保证项目的进度?
- 数据库的索引原理?
- 非聚簇索引和聚簇索引?
- 索引的使用注意事项?
- 联合索引
- 从底层解释最左匹配原则
- Mysql对联合索引有优化么?会自动调整顺序么?哪个版本开始优化?
- Redis的应用
- Redis的持久化的方式和原理
- 技术选型,一个新技术和一个稳定的旧技术,你会怎么选择,选择的考虑有哪些?
- 说你印象最深的美团点评技术团队的三篇博客
- 最近在学什么新技术?
- 你是怎么去接触一门新技术的?
- 会看哪些书?
- 怎么选择要看的书?
美团HR面:
- 平时使用美团吗?评价是如何?
- 都是用美团来干嘛?
- 你觉得美团这个平台怎么样?
- 有朋友面试美团或者在美团工作吗?
- 现在还在面试的有哪些公司?
- 问那你觉得在各个公司的面试给你的体验是什么?
- 薪资期望