美团拿到offer的最新面经来了(技术三面+HR)
美团一面:
自我介绍
HashMap,ConcurrentHashMap与LinkedHashMap的区别
如何在多线程环境下使用Map,ConcurrentHashMap原理,ConcurrentHashMap如何加锁。
多线程并发的同步实现,有两个方法,每个方法里有a部分代码和b部分代码,我要让两个线程分别执行两个方法,并且让他们运行完a部分代码再一起向下执行,如何实现。
TCP连接中的三次握手和四次挥手,四次挥手的最后一个ack的作用是什么,为什么要time wait,为什么是2msl。
ReetrantLock和synchronized的区别。
Java有哪些悲观锁的实现?
Java有哪些类实现了乐观锁?
java里面的同步锁了解吗?Countdownlauch和Cylicbarrior的区别,分别在什么应用场景下使用
JVM的内存结构?哪些是共享的,哪些是线程私有的?Java虚拟机栈里面存放的是什么?
如何自己实现一个线程池让别人使用?
哪些情况会触发Java的类加载?
手写代码:快速排序、单例模式,化一个工厂和装饰者模式的UML类图
AOP的实现原理?
Java锁有哪几种?可重入锁和不可重入锁的区别?
Lock和synchronized的区别?它们都是可重入锁吗?哪个效率更高?
美团二面:
线程池有哪些参数?分别有什么用?如果任务数超过的核心线程数,会发生什么?阻塞队列大小是多少?
数据库连接池介绍下,底层实现说下
hashset底层实现,hashmap的put操作过程
说说HaspMap底层原理?再说说它跟HaspTable和ConcurrentHashMap他们之间的相同点和不同点?
说说B+树和B树的区别,优缺点等?
算法题,对一个链表进行归并排序,链表可能有环
怎么实现一个线程安全的计数器?
原子类AtomicInteger实现原理是什么?和你设计的计数器优劣比较?CAS怎么实现原子操作的?
Java中的锁有什么?synchronized与Lock的区别?公平锁和非公平底层怎么实现的?AQS原理详细介绍一下?
JVM中的内存区域划分,堆的分代,为什么分代, 垃圾回收算法,垃圾回收器
如何实现进程间特定场景下的高效通信, 问了存储相关的问题。
MySQL索引类型, 底层的数据结构
你了解哪些收集器?CMS和G1。详细谈谈G1的优点
美团三面:
自己项目中的总结的并发经验
说说MySQL的锁并发?加锁的机制是什么?
高并发场景下如何防止死锁,保证数据的一致性?
集群和负载均衡的算法与实现?
说说分库与分表设计?
分库分表带来的分布式困境与对应之策有哪些?
Redis和Setnx命令是如何实现分布式锁的?使用Redis怎么进行异步队列?会有什么缺点?
缓存击穿的概念和解决方案?
Redis的数据结构? 线程模型? Redis的数据淘汰机制?
Redis的数据一致性问题
MQ底层原理的实现?
阻塞队列不用Java提供的该怎么实现?
讲讲负载均衡的原理?
如何实现高并发环境下的削峰、限流?
总结
面试建议是,一定要自信,敢于表达,面试的时候我们对知识的掌握有时候很难面面俱到,把自己的思路说出来,而不是直接告诉面试官自己不懂,这也是可以加分的。
获取往期以上更多最新面试题资料,直接转发一下这篇文章+关注公众号【Java烂猪皮】关注后回复【666】即可获取哦~
腾讯、阿里、滴滴后台面试题汇总总结 — (含答案)
面试:史上最全多线程面试题 !
最新阿里内推Java后端面试题
JVM难学?那是因为你没认真看完这篇文章
关注作者微信公众号 —《JAVA烂猪皮》
了解更多java后端架构知识以及最新面试宝典
看完本文记得给作者点赞+在看哦~~~大家的支持,是作者源源不断出文的动力