bg:c9本科基础:以前有一些java编程,数据库基础。投递:3.16hr联系:3.23一面:3.25。面经:1.java的集合容器了解多少2.hashmap详细介绍一下,扩容机制是什么3.线程安全的集合类介绍一下吧4.线程安全的类常用的一个说说5.锁的实现机制讲一讲6.sync为什么是可重入的7.aqs怎么实现8.sql的索引有哪些9.sql的覆盖索引怎么用的,为什么效率更高10.输入一条select语句,执行流程11.事务实现方式,传播机制12.redis的热数据怎么识别13.分布式锁支持跨节点吗14.spring的启动流程15.消息队列死信队列怎么绑定手撕反转链表当天发消息告诉过了,隔一天二面二面1h被逼问到心态爆炸,但是一小时后给过百度二面面经:1.介绍一下常见集合2.介绍一下并发集合3.什么是并发,什么是并行,4,线程池的核心线程数取决于什么5.spring源码我看你说看过,aop怎么实现的,6.伪代码写一下proxy代理和cglib代理,aop是什么代理策略。7.spring我看你说看了postprocessor,介绍下事务是底层怎么实现的。在bean生命周期配置的吗,怎么配置的8,慢sql,除了表大小,索引,锁,还有什么可以排查的(这里半天没想起来,他提醒下我说线程池,还说要考虑连接池参数,他看起来想要的就是这个答案),9.redis的分布锁怎么加的,说一下伪代码。10,主从逻辑怎么用锁,还能用分布锁吗。11,先更新数据库再更新缓存会读到脏数据吗。12,redis的限流怎么实现的。13,rabbitmq底层的消息可靠性怎么保证的(我说了持久化durible,ack应答,重试,使用callable接口,他说还有呢,没想到别的,没答上)14,sql索引设置经验我看你说了覆盖索引,怎么设置合适的覆盖索引。15,怎么实现ack重试的。16,redis单线程为什么还要保证原子性,怎么保证。17。除了cacheasise,还有什么策略你知道吗(说了双删,监视binlog,没细问)一面一共1h23m,手撕反转链表瞬间a了,而且一面面试官会特别耐心听你说完,没有聊天环节都说了一小时。二面面试官每当我想细致回答时候总会打断说好了不用说了,后面一直在逼问项目的内容,我项目确实是我自己纯手搭的,有些简单了,但是我对于细节比较清楚,他说压测因为面向学生范围太小体现不出并发,一直问reids缓存策略,我提出分布锁,旁路缓存,监察binlog,还是不满意,最后问了我多线程参数,我反应过来是想用多线程,但是springboot 的tomcat底层不就是多线程的吗😢,还是想让我用Async异步,不知道到底该说什么😭一面下午三点面完,四点打电话通知过了,二面也是三点左右面完,等半天没电话以为挂了,结果是自己把hr电话挂了😂,幸好等一个小时又告诉过了三面:30m,纯聊天,问竞赛,问项目团体,秒约hr面hr面:问了为什么不考研,入职时间总体感觉百度更尊重人,不会的也会耐心提醒,尤其是比起腾讯来说(腾讯特别喜欢压力)已oc,说4.8发offer,4.9集体入职感谢二哥的八股,问到的所有问题八股里都有,真是我见过最全的java八股了