記一次位元組跳動Java研發崗的面試經歷,跪了
提起MySQL,其實網上已經有一大把教程了,為什麼我還要寫這篇文章呢,大概是因為網上很多網站都是比較零散,而且描述不夠直觀,不能系統對MySQL相關知識有一個系統的學習,導致不能形成知識體系。為此我撰寫了這篇文章,試圖讓這些底層架構相關知識更加直觀易懂:
-
儘量以
圖文
的方式描述技術原理; -
官網
或者技術書籍
來源,方便大家進一步擴充套件學習; -
涉及到的
背景知識
儘可能做一個交代,比如討論到log buffer的刷盤方式,延伸一下IO寫磁碟相關知識點。
好了,MySQL從不會到精通系列馬上就要開始了(看完之後還是不會的話..請忽略這句話)。
螞蟻金服一面:
下午杭州的電話,問有沒有空,果斷有空,雖然感覺略顯緊張,有點懵逼。
面試的題目:
-
HashMap和Hashtable的區別
-
實現一個保證迭代順序的HashMap
-
說一說排序演算法,穩定性,複雜度
-
說一說GC
-
可以保證的實習時長
-
職業規劃
整體來說,一面的基礎性問題比較多,所以博主基本都答出來了,準備過還是有些用處的。所以一面完了感覺還不錯,接著第二天下午就二面了。
螞蟻金服二面
二面是我最慌的面試,因為二面是最關鍵的,是最大的主管面試,所以非常關鍵,整體來說,二面的節奏非常快,和一面完全不同,面試官很希望我言簡意賅的說完答案,所以面的不算很好,當時完了又以為GG了,好在最後還是幸運的過了,面試問題如下:
-
自我介紹。
-
JVM如何載入一個類的過程,雙親委派模型中有哪些方法?
-
HashMap如何實現的?
-
HashMap和Concurrent HashMap區別, Concurrent HashMap 執行緒安全嗎, Concurrent HashMap如何保證 執行緒安全?
-
HashMap和HashTable 區別,HashTable執行緒安全嗎?
-
程式間通訊有哪幾種方式?
-
JVM分為哪些區,每一個區幹嗎的?
-
JVM如何GC,新生代,老年代,持久代,都儲存哪些東西?
-
GC用的引用可達性分析演算法中,哪些物件可作為GC Roots物件?
-
快速排序,過程,複雜度?
-
什麼是二叉平衡樹,如何插入節點,刪除節點,說出關鍵步驟。
-
TCP如何保證可靠傳輸?三次握手過程?
-
TCP和UDP區別?
-
滑動視窗演算法?
-
Linux下如何進行程式排程的?
-
Linux下你常用的命令有哪些?
-
作業系統什麼情況下會死鎖?
-
常用的hash演算法有哪些?
-
什麼是一致性雜湊?
-
如何理解分散式鎖?
-
資料庫中的正規化有哪些?
-
資料庫中的索引的結構?什麼情況下適合建索引?
-
Java中的NIO,BIO,AIO分別是什麼?
-
用什麼工具除錯程式?JConsole,用過嗎?
-
現在JVM中有一個執行緒掛起了,如何用工具查出原因?
-
執行緒同步與阻塞的關係?同步一定阻塞嗎?阻塞一定同步嗎?
-
同步和非同步有什麼區別?
-
執行緒池用過嗎?
-
如何建立單例模式?說了雙重檢查,他說不是執行緒安全的。如何高效的建立一個執行緒安全的單例?
-
concurrent包下面,都用過什麼?
-
常用的資料庫有哪些?redis用過嗎?
-
瞭解hadoop嗎?說說hadoop的元件有哪些?hdfs,hive,hbase,zookeeper。說下mapreduce程式設計模型。
-
你知道的開源協議有哪些?
-
你知道的開源軟體有哪些?
-
你最近在看的書有哪些?
-
你有什麼問題要問我嗎?
-
瞭解哪些設計模式?說說都用過哪些設計模式
-
如何判斷一個單連結串列是否有環?
-
作業系統如何進行分頁排程?
-
匿名內部類是什麼?如何訪問在其外面定義的變數?
二面面試官問的很急,我答的也快,所以有兩個問題答的不好,但是面試官讓我覺得有一種肅然起敬的感覺,因為他說話比較快,但是都能說到點子上,最關鍵的說的話非常讓人容易接受。
二面過了,當天晚上我就接到了三面的電話(阿里的效率真的讓我瞠目結舌)
螞蟻金服三面
三面已經是交叉面試了,基本都圍繞我的專案展開,我經過前面幾次的面試之後,這個時候已經擁有了很高的面試經驗值了,所以三面的時候我一點不慌了,回答問題非常穩重,三面的問題如下:
-
自我介紹,做過什麼專案。
-
java虛擬機器的區域如何劃分,每一個區的動能,這一塊自由發揮。
-
雙親委派模型中,從頂層到底層,都是哪些類載入器,分別載入哪些類?
-
有沒有可能父類載入器和子類載入器,載入同一個類?如果載入同一個類,該使用哪一個類?
-
HashMap的結構,get(),put()是如何實現的?HashMap有哪些問題?
-
ConcurrentHashMap的get(),put(),又是如何實現的?ConcurrentHashMap有哪些問題? ConcurrentHashMap的鎖是讀鎖還是寫鎖?
-
HashMap與HashTable的區別
-
sleep()和wait()分別是哪個類的方法,有什麼區別?synchronized底層如何實現的?用在程式碼塊和方法上有什麼區別?
-
什麼是執行緒池?如果讓你設計一個動態大小的執行緒池,如何設計,應該有哪些方法?
-
什麼是死鎖?JVM執行緒死鎖,你該如何判斷是因為什麼?如果用VisualVM,dump執行緒資訊出來,會有哪些資訊?這一塊問的很多....問的我懵了. 因為並沒有實際操作過 = =
-
檢視jvm虛擬機器裡面堆、執行緒的資訊,你用過什麼命令?我只用過圖形介面VisualVM。。。
-
垃圾回收演算法有哪些?CMS知道嗎?如何工作的?
-
資料庫中什麼是事務?事務的隔離級別?事務的四個特性?什麼是髒讀,幻讀,不可重複讀?
-
資料庫索引的結構有哪些?我說B樹和B+樹,他說只有這兩個嗎。我又說全文倒排索引。然後介紹B+樹的結構。
-
資料庫中的分頁查詢語句怎麼寫?
-
什麼是一致性雜湊?用來解決什麼問題?
-
Redis的儲存結構,或者說如何工作的,與mysql的區別?有哪些資料型別?
-
專案中用到redis,為什麼選用redis,瞭解其他NoSQL資料庫嗎?在你的專案中是如何運用redis的?key是什麼,value是什麼?
-
歸併排序的過程?時間複雜度?空間複雜度?
-
你平常用什麼排序?快速排序。說說在那些場景下適用,哪些場景下不適用。
-
你在專案中做什麼?因為我用到Solr,他就問我Solr是如何工作的?
-
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69990490/viewspace-2792693/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 位元組跳動web前端面試經歷Web前端面試
- 位元組跳動-後端開發崗實習面經後端
- 【上海】位元組跳動招聘研發工程師!!!工程師
- 記一次微信小程式轉位元組跳動小程式的經驗微信小程式
- 位元組跳動總監某乎獲贊過萬的Java開發筆記、簡歷模板、面試真題Java筆記面試
- 位元組跳動ios面經iOS
- 位元組跳動入股遊戲研發雷霆瀚海,路平擔任總經理遊戲
- 位元組跳動前端研發面經-2020春招技術面前端
- 看完位元組跳動開發崗薪酬體系,不淡定了
- 大四菜雞的第一次面試經歷,我的後端日常實習面經,已經拿了位元組跳動和B站offer!面試後端
- 一次java面試經歷Java面試
- 位元組跳動,跳動的“遊戲夢”遊戲
- 螞蟻、位元組、滴滴面試經歷總結面試
- 記一次面試經歷面試
- 記一次 Google 面試經歷Go面試
- 阿里面試經歷及總結(資料研發、Java研發方向)阿里面試Java
- 位元組跳動後端開發 面經(已收到意向書)後端
- 大廠面經: 位元組跳動 iOS開發實習生-飛書iOS
- 對線面試官 | 位元組跳動一面面試
- 艱辛挺過位元組Android研發崗4輪面試,收到sp offer月薪45k!揭秘位元組面試流程及考點Android面試
- 位元組跳動或計劃研發社交元宇宙App「Pixsoul」元宇宙APP
- 記錄一次騰訊Go開發崗位面試經過Go面試
- 位元組跳動商業變現團隊【研發崗】招人,敖丙覺得你得嘗試一下
- 1307頁位元組跳動Java面試全套真題解析火了,Java面試問題集合Java面試
- 憑藉這份Java超硬核面試 “備戰” 手冊!我剛面試完位元組跳動、阿里、華為、小米等後端崗位Java面試阿里後端
- 位元組跳動的「遊戲」法則遊戲
- 【位元組跳動】【上海】iOS開發實習生招聘iOS
- 【位元組跳動】【上海】前端開發實習生招聘前端
- 兩年經驗前端:位元組跳動系—石墨文件面經前端
- 記一次面試後的經歷,求解篇面試
- 位元組跳動發行的3款中重度遊戲大火,首款自研已在路上遊戲
- 傳位元組跳動成立“綠洲計劃”自研重度遊戲遊戲
- 網際網路寒冬!騰訊、位元組跳動面經已發,系列篇
- 【位元組跳動】【上海】Android開發實習生招聘Android
- 位元組跳動的遊戲大冒險遊戲
- 位元組跳動的16款重度遊戲遊戲
- 位元組跳動的技術架構架構
- 位元組跳動面試官:請用JS實現Ajax併發請求控制面試JS