美团优选春招一面面经 java
美团优选 春招
2021.03.13笔试 ac 2.45/5
一面 2021.03.23 60min
- 自我介绍
- TiDB存什么?你们怎么定义慢查询?
- 用ES是什么场景?有遇到什么问题吗?对ES内部原理、高阶使用方法有了解吗?你们存TiDB、ES的划分原则是怎么样的?
- ES数据一致性是怎么保证的?refreshIndex是刷到所有从节点吗?假如挂了一台从节点会怎么样?
- 有仔细去看过什么框架的内部原理吗?Spring Bean的生命周期是怎么样的?
- BeanFactory 和 FactoryBean有什么区别?FactoryBean做什么用的?
- 类加载机制有哪些阶段?分别会做什么事情?Class.forName()过程是怎么样?Class对象存到哪里?1.8之前呢?
- 线程这块了解吗?有用到线程池吗?怎么判断要开多少个线程比较合适?IO密集型和CPU密集型的任务都有的话怎么判断?有哪些指标?
- 线程同步有哪些方式?
- Synchronized和Lock有什么区别?哪个是可重入锁?可重入和不可重入的区别是什么?
- 分布式锁有了解吗?上锁和解锁的结构是怎么样的?不用watch和Lua脚本还有别的方案吗?
- zk的主从同步是怎么样的?zk为什么要部署奇数台?(让提示,说思考怎么避免脑裂现象,不会)
- 慢查询优化你做了哪些事情?有user_id和save_time两个索引,select * from order where user_id = 1 order by save_time,走了什么索引?有没有场景不是走user_id索引?(面试官说了数据严重倾斜的情况会走save_time索引)(我说了varchar列where = 数字,不走索引。然后聊hash索引)b+树是用什么数据去做索引的?InnoDB能不能建哈希索引?
- Dubbo从哪获取服务提供了哪些方法和配置的?每次都去拿吗?Dubbo把配置拉过来之后存到哪里?
- 撕代码(约瑟夫环,不会换一道,最长公共子序列。想了几分钟,写了个大概思路,方程没想出来,写了15min放弃了)
面试官很好说话,聊天都是笑嘻嘻的。问的比较细,面了这么多聊得最深入的一次,问了不少中间件的思考题,我人都傻了。最后代码题没撕出来,很尴尬。
2021.03.31 约二面
签了跟谁学之后,在宿舍当了半个多月废物,代码都不会写了,一面感觉自己太菜了,选择放弃了。
#面经##Java工程师##校招##美团#