面試題如下
一面(主要是jvm,并發(fā),鎖,數(shù)據(jù)結(jié)構(gòu)等基礎(chǔ))
1.自我介紹(說(shuō)說(shuō)自己的擅長(zhǎng)及拿手的技術(shù))
2.自我介紹(說(shuō)說(shuō)自己的擅長(zhǎng)及拿手的技術(shù))說(shuō)說(shuō)treemap和HashMap的區(qū)別?HashMap和ConcurrentHashMap的區(qū)別?
3.HashMap底層如何實(shí)現(xiàn)(JDK1.8有所改動(dòng))?
4.說(shuō)說(shuō)Hash的一致算法?
5.你知道的GC算法和回收策略有哪些?GC的機(jī)制是什么?
6.垃圾回收器的基本原理?是否可以立即回收內(nèi)存?怎么樣主動(dòng)的通知JVM進(jìn)行垃圾回收?
7.雙親委派模型機(jī)制
8.線程池創(chuàng)建的幾個(gè)核心構(gòu)造參數(shù)是什么?
9.樂觀鎖和悲觀鎖?可重入鎖和Synchronized?
10.他們都是可重入鎖嗎?哪個(gè)效率更高?
11.CountDownLaunch和Cylicbarrior的區(qū)別以及分別是在哪樣場(chǎng)景下使用的?
12.Http和Https的區(qū)別以及Https加密的方式?
13.以后的職業(yè)規(guī)劃和想法
二面(主要是數(shù)據(jù)庫(kù),協(xié)議,Spring等)
1.自我介紹,聊下自己認(rèn)為做得很好的項(xiàng)目!
2.InnoDB支持的四種事務(wù)隔離級(jí)別名稱是什么? 之間的區(qū)別是什么?MySQL隔離級(jí)別是什么?
3.說(shuō)說(shuō)事務(wù)的特性?講講對(duì)慢查詢的分析?
4.你理解的BTree機(jī)制?
5.有哪些MySQL常用的優(yōu)化方法?
6.Http請(qǐng)求過(guò)程,DNS解析的過(guò)程?
7.三次握手和四次握手的過(guò)程?
8.B+樹索引和Hash索引之間的區(qū)別?
9.Spring IOC如何管理Bean之間的依賴關(guān)系,怎么樣避免循環(huán)依賴?
10.SpringBean創(chuàng)建過(guò)程中的設(shè)計(jì)模式?
11.說(shuō)說(shuō)AOP的實(shí)現(xiàn)原理?
12.Tomcat的基本架構(gòu)是什么?
三面(主要是緩存,高并發(fā),分布式)
1.自己項(xiàng)目中的總結(jié)的并發(fā)經(jīng)驗(yàn)
2.說(shuō)說(shuō)MySQL的鎖并發(fā)?加鎖的機(jī)制是什么?
3.高并發(fā)場(chǎng)景下如何防止死鎖,保證數(shù)據(jù)的一致性?
4.集群和負(fù)載均衡的算法與實(shí)現(xiàn)?
5.說(shuō)說(shuō)分庫(kù)與分表設(shè)計(jì)?
6.分庫(kù)分表帶來(lái)的分布式困境與對(duì)應(yīng)之策有哪些?
7.Redis和Setnx命令使如何實(shí)現(xiàn)分布式鎖的?使用Redis怎么進(jìn)行異步隊(duì)列?會(huì)有什么缺點(diǎn)?
8.緩存擊穿的概念和解決方案?
9.Redis的數(shù)據(jù)結(jié)構(gòu)? 線程模型? Redis的數(shù)據(jù)淘汰機(jī)制
10.Redis的數(shù)據(jù)一致性問題
11.MQ底層原理的實(shí)現(xiàn)?
12.阻塞隊(duì)列不用Java提供的該怎么實(shí)現(xiàn)?
13.講講負(fù)載均衡的原理?
14.如何實(shí)現(xiàn)高并發(fā)環(huán)境下的削峰、限流?
四面(主要項(xiàng)目入手)
1.講講項(xiàng)目中用到的中間件(Dubbo/MQ/Zookeeper/Redis/Kafka)?
2.什么情況下會(huì)造成雪崩?該怎么避免這種情況?
3.高并發(fā)架構(gòu)的設(shè)計(jì)思路?
4.以前的項(xiàng)目中遇到的問題和解決策略?
5.生活中遇到過(guò)哪些挫折?最后怎么解決的?
---------------------