【58集团】Java岗-二面面经分享

今天有幸参加了58同程校招流程二面面试!在此分享面经!

面试官人非常的nice,全过程如果遇到问题卡顿了,我没思路了都有一个思路的指引

1.聊项目(实习)

2.项目中如何解决消息丢失和消息完整性

3.消息积压时候的解决方式

4.如果消息消费系统或生产者出现了问题,中间件如何处理?系统如果宕机或者消息出现问题你是怎么解决的?异常消息你们都如何处理?

5.系统中的事务如何实现,事务的底层原理。

看你简历写得都比较低调都是了解Java,Mysql这些…答:我个人认为我的工作经验和经历不足以写熟悉…

6.多线程下安全集合有哪些?copyAndWriteList底层原理?

7.hashtable,concurrentHashMap原理?

8.HashMap的扩容机制?为什么是2的幂?与操作的特点是?这里我就没答好,面试官点播了我,当长度为2^n时,2^n-1会有更多的1,可以避免空间的浪费。

9.数据库innodb引擎的数据结构 B+树,优点是什么?

10.多线程一定优于多线程么?为什么?聊了上下文切换,线程创建的开销问题。多线程一定要加锁么?

11.单个线程的线程池使用场景和它的特点是什么?为什么一个线程池中就一个线程池?

这个答得不太好,面试继续点播:首先你要从线程池解决什么问题去入手然后再去考虑它的的特点和解决那些问题。这个回答后我瞬间茅塞顿开,回答了一番。池化思想,避免开销,加入队列中顺序执行等等。

12.Mysql引擎数据页和锁的概念?锁的什么内容?

13.Java中多线程加锁的方式有哪些?

还有一些细碎的就忘记了,大概不到20个问题,线程池和2的幂次呢里有些卡顿,其余的都答出来了,过程充斥着紧张和顿悟!二面终于完成,期待通过!许愿HR面

发表评论

后才能评论