美团一二面面经

8.28一面(95min)

1.子类与父类的加载过程,静态方法重写,静态代码块

2.Java中sync阻塞与可重入是怎么实现的,轻量级锁这么可重入,重量级锁维护了wait set

3.sync锁升级,AQS

4.用户态,内核态

5.wait与sleep,调用后操作系统发生了什么,sleep是怎样唤醒的

6.concurrenthashmap介绍,size()怎么个流程

7.单例模式,双重校验锁,volatile机制,可见性原理(MESI),直接将sync加方法上的锁粒度问题,类加载机制的懒汉

8.MySQL中select语句执行流程

9.事务与并发MVCC

10.rr隔离级别下的间隙锁导致的死锁问题

11.索引的注意事项

12.uuid与自增id,顺序写与随机写,空间占用,可能导致极端情况varchar数据存不下导致的行溢出问题,同时网络消耗(其实这都不重要,能消耗多少)

11.mysql能否保证数据不丢失

12.事务注解失效的情况,你是怎么避免的,主要说了代理类,吃异常的一些问题

13.spring循环依赖解决,两级缓存能否解决,可以,只是需要实例化后都暴露且暴露代理类,三级缓存提供了一个延迟以及按需加载的思想(不知道理解的对不对),判断是否需要加载代理类,以及需要时才提前暴露

14.mybatis执行流程,缓存有了解吗,说一下优缺点

15.实习问题

手撕:链表加法

9.3二面(65min)

1.聊一下hashmap,负载因子与len = 8锁涉及到的概率问题,树化的优缺点

2.介绍concurrenthashmap -> CAS + sync + volatile,主要说一下尽量使用用户态的CAS去尝试,这点再AQS中也有体现(不知道我的理解有没有问题)

3.你说了concurrenthashmap 这么多优点,那有没有缺点 -> 主要提了一下并发机制,常见的缓存,MVCC中rc,rr允许读旧数据,尽管volatile无需加锁,但cpu缓存一致性时也存在消耗,可能在读写并发量较高时性能有所缺陷

4.MySQLselect语句流程(我真绷不住了,一面问了我没复习)

5.MySQL如何解析到select语法错误的,客户端连接时,用户名密码存在错误时MySQL如何解决的

6.介绍B+树,主要从多叉有序平衡,树高来说

7.你说了B+树有这么多优点,那有没有缺点,这边主要讲了并发量高的insert/delete场景下页分裂时锁整棵树,讲了B-link树的一些优化点,谈到了跳表设计机制

8.说一下常用的jdk,1.8的新特性,lambda实现原理,功能性接口

9.实习拷打

手撕:山峰数组二分找变化点下标

补充:简历上的实习内容有些不清楚,还好找同事咨询了,不然也是难绷

有保底心态确实会不一样

9.6 oc

全部评论

相关推荐

12-04 04:20
门头沟学院 Java
1. 简单介绍项目背景、开发流程及系统核心功能。2. 分布式场景下如何解决用户连续两次提交的问题?3. 仅开发后端接口吗?是否涉及前端工作?4. 后端部分是从0到1独立开发,还是基于现有项目二次修改?5. 请讲解JWT在项目中的具体执行流程。6. 未搭建前端但登录功能需前后端紧密配合,对此是如何处理的?7. JWT与OAuth 2.0之间是什么关系?8. 请说明JWT与OAuth 2.0的对比过程及结论。9. 项目中生成的Token除用户名和密码外,还包含哪些信息?10. 调研过业界登录功能的其他实现方式吗?除了JWT之外还有哪些?11. 项目中ES存储的题库内容总量有多少?12. 请解释什么是倒排索引。13. ES中的数据是如何导入的?是否结合了数据库使用?14. 该场景下直接使用事务是否可行?为什么?15. 使用RocketMQ时,是否调研过其他开源消息队列?对比结果如何?16. 消息队列中如何处理消息的幂等消费问题?17. 了解类加载的完整过程吗?请简要说明。18. 类初始化时,静态代码块、常量、复合函数的执行顺序是什么?(结合代码判断输出结果)19. 请讲解JVM的内存结构。20. 常见的垃圾回收器有哪些?21. G1相对于CMS有哪些核心提升?22. 如何认定“价值比较大”?(结合上下文场景说明)23. 了解JVM的相关参数吗?请举例说明。24. 项目中目前使用的是什么垃圾回收器?25. Spring中注入Bean有几种方式?26. 请讲解Spring中AOP的原理及应用场景。27. 场景题:设计美团话费充值功能的MySQL表结构,需要设计几张表才能实现核心功能?28. 针对充值记录表,编写对应的建表语句。
查看28道真题和解析
点赞 评论 收藏
分享
评论
2
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务