字節(jié)三面過了!
時間:2021-08-18 10:19:15
手機看文章
掃描二維碼
隨時隨地手機看文章
[導讀]大家好,我是小林。昨晚收到個讀者的喜事,在秋招中,過了字節(jié)的三面,已經(jīng)穩(wěn)的了。我簡單跟他聊了下,他說他在備戰(zhàn)的時候,他對于操作系統(tǒng)和計算機網(wǎng)絡(luò)的學習,都深入的非常底層,不至于表面的理論知識,所以他在面試的時候,就會讓面試官有很深刻的影響,屢試不爽。三面字節(jié)的面經(jīng)也整理好了,這次就...
大家好,我是小林。昨晚收到個讀者的喜事,在秋招中,過了字節(jié)的三面,已經(jīng)穩(wěn)的了。我簡單跟他聊了下,他說他在備戰(zhàn)的時候,他對于操作系統(tǒng)和計算機網(wǎng)絡(luò)的學習,都深入的非常底層,不至于表面的理論知識,所以他在面試的時候,就會讓面試官有很深刻的影響,屢試不爽。三面字節(jié)的面經(jīng)也整理好了,這次就先分享下面經(jīng),等過幾天再分享學習路線和心得,大家期待下就好啦。
一面 1h5min
- 項目?緩存一致?為什么更新?本地是廣播消費?消費失敗怎么辦(重試,還不行就數(shù)據(jù)庫兜底重發(fā),然后人工干預(yù))?緩存預(yù)熱?緩存數(shù)據(jù)有多少?能存多少?
- 優(yōu)化:拆分服務(wù)后本地緩存分批存?不同服務(wù)對應(yīng)存不同本地緩存?消費失敗可以不用兜底?
- mq的作用?冪等和防止重復(fù)?消息丟失怎么解決?
- get、put、post區(qū)別?哪個是冪等的??冪等詳解?
- http不同版本區(qū)別?要說到QUIC的握手時機不同
- QUCI發(fā)送過程?(很底層,包括重復(fù)發(fā)送那一塊)
- 內(nèi)存淘汰策略?緩存數(shù)據(jù)過熱?數(shù)據(jù)結(jié)構(gòu)?
- 隔離級別怎么保證可重復(fù)讀?mvcc和間隙鎖
- 索引區(qū)別?innodb解決幻讀?
- hashmap線程不安全在哪里?1.8hash為什么高效?
- 鎖升級?很細?可重入鎖源碼(status?)?公平鎖非公平鎖源碼區(qū)別?對象頭結(jié)構(gòu)詳細?.
- synchronized 和lock區(qū)別?synchronized 怎么加鎖的底層?monitor對象?兩個隊列?非公平競爭?
- volatile?MESI?為什么MESI還要volatile?(語言層面volatile,lock前綴?系統(tǒng)層面MESI,JMM模型映射,內(nèi)存屏障,總線風暴?提一下MESI優(yōu)化的那兩個隊列所有要用內(nèi)存屏障進一步保證)
- 算法說思路:整數(shù)數(shù)據(jù)取中位數(shù)(我說數(shù)據(jù)量不大就排序根據(jù)奇偶取中間?優(yōu)化可以排序到中間就判斷,不用全排序?騷操作可以放redis里?)沒有刁難我
二面 1h
- 項目陳述?
- 為什么canal?canal解耦,懶加載,自帶的順序發(fā)送?為什么保證更新順序這里不可以用mq消息版本?
- canal是單獨節(jié)點部署的么?
- 可不可以不用mq?各個本地節(jié)點都載入canal?k8s sidecar掛載?
- mq可靠性?從發(fā)送到持久化到廣播消費(定時任務(wù)(第三方控制速率) 查庫 ,優(yōu)化 延遲消息 這里可以argue)
- 本地緩存優(yōu)化?緩存預(yù)熱?為什么更新?最終一致?
- 重復(fù)消費那里?順便說一嘴弱校驗
- 算法:一個數(shù)組和一個K,數(shù)組A{1,1,1,0,0,1,1,0},K=2,能讓最多K個0變?yōu)?,問連續(xù)1最大是多少?滑動窗口
- 多嘴說了OS偽共享,秀了一下os,說Java的并發(fā)框架有用字節(jié)填充來實現(xiàn)Cacheline填充總結(jié),項目這里漏說了分布式鎖,但是這些已經(jīng)說了四十分鐘了,最后就做題了
三面1h15min
- 有沒有別的offer?
- 成績怎么樣?為什么不考研?
- 說下項目?
- 工作流怎么設(shè)計?原來是怎么樣的?提供外部系統(tǒng)是怎樣的?優(yōu)化業(yè)務(wù)嵌入數(shù)據(jù)是咋樣的?
- 緩存存什么?數(shù)據(jù)結(jié)構(gòu)是怎么樣的?緩存大小,大小優(yōu)化?怎么高可用?
- 緩存預(yù)熱是咋樣的?spring啟動怎么保證的?數(shù)據(jù)啟動前不會被寫入?
- 分布式鎖?原子性,過期時間,單點,紅鎖,npc
- 進程間通信?源碼分析?管道實現(xiàn)?
- mysql怎么回滾的?
- redo,undo,bufferpool,宕機時候的兩階段判斷
- 數(shù)據(jù)包發(fā)送,mac,arp,子網(wǎng),路由轉(zhuǎn)發(fā),ringbuffer,數(shù)據(jù)拷貝
- 線程交替輸出
- 多線程每秒1000次訪問,超過則false,沒超過返回true
- 反問:
- canal k8s部署sidecar的看法 說綜合考慮人力和業(yè)務(wù),沒有最好的方案