首先,上午進(jìn)行面試人員簽到,大約100人左右。一共要2個人。下午1點(diǎn)半開始統(tǒng)一面試。人員較多,所以每個人只有3分鐘時間,一共最少8位面試官。過程中,他們很少提問題,如果你的技術(shù)比較新穎,會問你一些。例如SSH或SSM框架就沒意思了。
面試官問的面試題: 以下都是對我當(dāng)時的提問及個人回答。
1.你都擅長哪些RPC技術(shù)。答:webservice或者restFul或者ICE微服務(wù)。
2.你用過微服務(wù)?說說都用過什么?答:springboot或者springcloud和ICE。
3.你們?yōu)槭裁催x擇springboot開發(fā)?答:因?yàn)槭禽p量級框架,自動集成WEB服務(wù)器,并且不需要配置任何的XML,使用起來十分簡便。
4.你做過大型的互聯(lián)網(wǎng)項目嗎?你是如何處理高并發(fā)的?答:是的。處理并發(fā),首先就要實(shí)現(xiàn)動態(tài)頁面靜態(tài)化;制作散列表;實(shí)現(xiàn)緩存;增加鏡像;實(shí)現(xiàn)負(fù)載均衡;使用線程池和連接池來管理數(shù)據(jù)庫的連接。
5.問你點(diǎn)基礎(chǔ)吧,說一說集合框架Set為什么會自動去重?答:它底層重寫了equals和hashCode方法。
6.說說怎么同步線程?答:使用Syncronized關(guān)鍵字或者ReenTrantLock類或者ThreadLocal或者異步編程使用ExecutorService接口。
7.假設(shè)讓你寫個方法,里面有一堆數(shù)字,從1到N進(jìn)行排列。給你傳個參數(shù)N,你來判斷這個參數(shù)是否在這堆數(shù)字里面,如果在,請返回這個數(shù)字,如何用最效率的方式查出?答:使用多線程進(jìn)行拆分,把這一堆數(shù)字分成N段,用N個線程去同時異步讀取各自的那一段。
8.用過爬蟲嗎?答:沒用過。
9.現(xiàn)在我想爬取網(wǎng)頁的數(shù)據(jù),但是數(shù)據(jù)抓取的快,但是讀取的卻慢,這樣一直慢慢的讀,如果突然斷網(wǎng)停電,就會造成數(shù)據(jù)丟失。你有什么好方法嗎?說說思路?答:我建議,如果可以,使用消息隊列。或者把數(shù)據(jù)存取在臨時文件上,這樣即使讀取的慢,也可以慢慢的讀,不會造成數(shù)據(jù)丟失。但是效率還是跟不上。
最后。這就是面試內(nèi)容了,答案肯定不是最優(yōu),因?yàn)楫?dāng)時沒時間考慮那么多。大家可以多多交流,多多指教。