字節(jié)一面總結(jié)
1. 自我介紹
2. 項目深挖
? 一共開了幾個進(jìn)程?
? “你用的是微服務(wù)的架構(gòu),那多模塊間的通信是用的什么,具體的HTTP地址是怎么寫的”
○ “HTTP請求”(地址怎么寫沒太理解意思)
? 還有幾個想不起來了
3. 八股文
? 介紹一下網(wǎng)絡(luò)模型
○ 說了TCP/IP4層和OSI的7層,4層中每一層的作用,網(wǎng)絡(luò)層和傳輸層的協(xié)議
? HTTP在網(wǎng)絡(luò)模型的那一層?
○ 腦子短路了,說在傳輸層(實際在應(yīng)用層)
? TCP和UDP的區(qū)別?
○ TCP是面向連接的,有可靠性和有序性,功能有擁塞控制和流量控制,UDP沒有這些功能,但傳輸速度快
? 適用的場景?
○ TCP適合郵箱等數(shù)據(jù)可靠的場景、UDP適合游戲等要求速度快的場景
? 如果讓你設(shè)計一個聊天系統(tǒng),你會采用哪個?
○ 答的TCP(應(yīng)該是TCP和UDP混合)
? 如果用UDP會出現(xiàn)什么樣的情況?
○ 接受不到數(shù)據(jù)、亂序?
? 進(jìn)程和線程的區(qū)別?(實際上有七個角度可以說:資源、調(diào)度、內(nèi)存、開銷、通信、崩潰、場景)
○ 進(jìn)程包含線程,進(jìn)程有自己獨立的內(nèi)存空間(棧、堆、數(shù)據(jù)段等)、線程只有??臻g(其實還有一個寄存器)
○ 線程間通信直接在內(nèi)存共享通信,進(jìn)程需要通過IPC管道進(jìn)行通信
? 進(jìn)程間如何通信?
○ 說了有個共享區(qū)(是IPC的其中一個)
? 數(shù)據(jù)庫的數(shù)據(jù)存儲結(jié)構(gòu)是怎么樣的
○ InnoDB和mys,B+樹和B樹,B+樹的數(shù)據(jù)存儲在葉子節(jié)點、B數(shù)存儲在所有節(jié)點(太片面了)
? 線程池的核心參數(shù)有哪些?
○ 核心線程數(shù)、最大線程數(shù)、隊列、拒絕策略
? 如果是B+樹那查詢的整個流程是什么
○ 先通過根節(jié)點確定子節(jié)點,然后繼續(xù)找,直到葉子節(jié)點
? 為什么B+樹是三層?
○ 沒回答上來,說的三層已經(jīng)可以存儲百萬級的數(shù)據(jù)滿足一般需求
? 哈希表了解嗎?請解釋一個java中哈希的操作
○ HashMap的put方法,先是hashCode方法、然后map中的hash、按位與、存入元素,引出哈希沖突和擴容機制,鏈表和紅黑樹的轉(zhuǎn)換(低于6轉(zhuǎn)回鏈表,超過8轉(zhuǎn)成紅黑樹)、1.8以前是頭插法、1.8以后是尾插法等等
? 為什么是按位與?他是做什么的?
○ 計算hash桶的位置,存入數(shù)據(jù)的依據(jù)
? 方法異常的處理方法?如何優(yōu)雅的處理?
○ Try-catch方法
? 如何在異常的時候釋放資源?
○ 手動釋放和return 方法結(jié)束自動釋放局部變量(錯誤,應(yīng)該是try-with-resources、finally)
? long類型所占的字節(jié)大小,范圍是多少 ?
○ 8字節(jié)、-2的63次冪到正的-1(這里我答錯了)
? 其他的基本類型都有什么呢?
○ 一共八個,byte、char、boolean、short等
4. 算法:數(shù)組中求嚴(yán)格遞增的子序列的長度
? 在letcode上做過,很快就做出來了,解釋代碼 二分查找
5. 反問
? 總結(jié):問的都了解但說的不夠細(xì)致,項目經(jīng)驗不夠多,感覺希望不大。
#??虯I配圖神器##面試##字節(jié)#
2. 項目深挖
? 一共開了幾個進(jìn)程?
? “你用的是微服務(wù)的架構(gòu),那多模塊間的通信是用的什么,具體的HTTP地址是怎么寫的”
○ “HTTP請求”(地址怎么寫沒太理解意思)
? 還有幾個想不起來了
3. 八股文
? 介紹一下網(wǎng)絡(luò)模型
○ 說了TCP/IP4層和OSI的7層,4層中每一層的作用,網(wǎng)絡(luò)層和傳輸層的協(xié)議
? HTTP在網(wǎng)絡(luò)模型的那一層?
○ 腦子短路了,說在傳輸層(實際在應(yīng)用層)
? TCP和UDP的區(qū)別?
○ TCP是面向連接的,有可靠性和有序性,功能有擁塞控制和流量控制,UDP沒有這些功能,但傳輸速度快
? 適用的場景?
○ TCP適合郵箱等數(shù)據(jù)可靠的場景、UDP適合游戲等要求速度快的場景
? 如果讓你設(shè)計一個聊天系統(tǒng),你會采用哪個?
○ 答的TCP(應(yīng)該是TCP和UDP混合)
? 如果用UDP會出現(xiàn)什么樣的情況?
○ 接受不到數(shù)據(jù)、亂序?
? 進(jìn)程和線程的區(qū)別?(實際上有七個角度可以說:資源、調(diào)度、內(nèi)存、開銷、通信、崩潰、場景)
○ 進(jìn)程包含線程,進(jìn)程有自己獨立的內(nèi)存空間(棧、堆、數(shù)據(jù)段等)、線程只有??臻g(其實還有一個寄存器)
○ 線程間通信直接在內(nèi)存共享通信,進(jìn)程需要通過IPC管道進(jìn)行通信
? 進(jìn)程間如何通信?
○ 說了有個共享區(qū)(是IPC的其中一個)
? 數(shù)據(jù)庫的數(shù)據(jù)存儲結(jié)構(gòu)是怎么樣的
○ InnoDB和mys,B+樹和B樹,B+樹的數(shù)據(jù)存儲在葉子節(jié)點、B數(shù)存儲在所有節(jié)點(太片面了)
? 線程池的核心參數(shù)有哪些?
○ 核心線程數(shù)、最大線程數(shù)、隊列、拒絕策略
? 如果是B+樹那查詢的整個流程是什么
○ 先通過根節(jié)點確定子節(jié)點,然后繼續(xù)找,直到葉子節(jié)點
? 為什么B+樹是三層?
○ 沒回答上來,說的三層已經(jīng)可以存儲百萬級的數(shù)據(jù)滿足一般需求
? 哈希表了解嗎?請解釋一個java中哈希的操作
○ HashMap的put方法,先是hashCode方法、然后map中的hash、按位與、存入元素,引出哈希沖突和擴容機制,鏈表和紅黑樹的轉(zhuǎn)換(低于6轉(zhuǎn)回鏈表,超過8轉(zhuǎn)成紅黑樹)、1.8以前是頭插法、1.8以后是尾插法等等
? 為什么是按位與?他是做什么的?
○ 計算hash桶的位置,存入數(shù)據(jù)的依據(jù)
? 方法異常的處理方法?如何優(yōu)雅的處理?
○ Try-catch方法
? 如何在異常的時候釋放資源?
○ 手動釋放和return 方法結(jié)束自動釋放局部變量(錯誤,應(yīng)該是try-with-resources、finally)
? long類型所占的字節(jié)大小,范圍是多少 ?
○ 8字節(jié)、-2的63次冪到正的-1(這里我答錯了)
? 其他的基本類型都有什么呢?
○ 一共八個,byte、char、boolean、short等
4. 算法:數(shù)組中求嚴(yán)格遞增的子序列的長度
? 在letcode上做過,很快就做出來了,解釋代碼 二分查找
5. 反問
? 總結(jié):問的都了解但說的不夠細(xì)致,項目經(jīng)驗不夠多,感覺希望不大。
#??虯I配圖神器##面試##字節(jié)#
全部評論
字節(jié)的hr問的是又雜又深,面完就直接流程結(jié)束了
請問是什么部門哇
相關(guān)推薦