三面鵝廠篮灼,我被虐的體無完膚……

經(jīng)過半年的沉淀,加上對MySQL徘禁,redis和分布式這塊的補(bǔ)齊诅诱,終于開始重拾面試信心,再次出征送朱。

鵝廠

面試職位:go后端開發(fā)工程師逢艘,接受從Java轉(zhuǎn)語言

都知道鵝廠是cpp的主戰(zhàn)場,而以cpp為背景的工程師大都對os骤菠,network這塊要求特別高它改,不像是Java這種偏重業(yè)務(wù)層的語言,之前面試Java的公司側(cè)重還是在數(shù)據(jù)結(jié)構(gòu)商乎、網(wǎng)絡(luò)央拖、框架、數(shù)據(jù)庫和分布式鹉戚。所以O(shè)S這塊吃的虧比較大

一面基礎(chǔ)技術(shù)面

電話面試鲜戒,隨便問了些技術(shù)問題,最后還問了個(gè)LeetCode里面medium級別的算法題抹凳,偏簡單

  1. redis有沒有用過遏餐,常用的數(shù)據(jù)結(jié)構(gòu)以及在業(yè)務(wù)中使用的場景,redis的hash怎么實(shí)現(xiàn)的赢底,rehash過程講一下和JavaHashMap的rehash有什么區(qū)別失都?redis cluster有沒有了解過,怎么做到高可用的幸冻?redis的持久化機(jī)制粹庞,為啥不能用redis做專門的持久化數(shù)據(jù)庫存儲?
  1. 了不了解tcp/udp洽损,說下兩者的定義庞溜,tcp為什么要三次握手和四次揮手?tcp怎么保證有序傳輸?shù)谋ǎv下tcp的快速重傳和擁塞機(jī)制流码,知不知道time_wait狀態(tài)又官,這個(gè)狀態(tài)出現(xiàn)在什么地方,有什么用漫试?(參考quic)
  1. 知道udp是不可靠的傳輸六敬,如果你來設(shè)計(jì)一個(gè)基于udp差不多可靠的算法,怎么設(shè)計(jì)商虐?
  1. http與https有啥區(qū)別觉阅?說下https解決了什么問題,怎么解決的秘车?說下https的握手過程典勇。
  1. 看你項(xiàng)目里面用了etcd,講解下etcd干什么用的叮趴,怎么保證高可用和一致性割笙?
  1. 既然你提到了raft算法,講下raft算法的基本流程眯亦?raft算法里面如果出現(xiàn)腦裂怎么處理伤溉?有沒有了解過paxos和zookeeper的zab算法,他們之前有啥區(qū)別妻率?
  1. 你們后端用什么數(shù)據(jù)庫做持久化的乱顾?有沒有用到分庫分表,怎么做的宫静?
  1. 索引的常見實(shí)現(xiàn)方式有哪些走净,有哪些區(qū)別?MySQL的存儲引擎有哪些,有哪些區(qū)別孤里?InnoDB使用的是什么方式實(shí)現(xiàn)索引伏伯,怎么實(shí)現(xiàn)的?說下聚簇索引和非聚簇索引的區(qū)別?
  1. 有沒有了解過協(xié)程捌袜?說下協(xié)程和線程的區(qū)別说搅?
  1. 算法題一個(gè),劍指offer第51題虏等,數(shù)組中的重復(fù)數(shù)字弄唧?

自己的回答情況,redis這塊沒啥問題博其,具體rehash有印象是漸進(jìn)式的套才,但是具體原理可能答的有點(diǎn)出入。tcp的time_wait這塊答的不是很好慕淡,之前沒有了解過quic機(jī)制的實(shí)現(xiàn),所以問可靠性udp的時(shí)候沸毁,基本上腦子里就照著tcp的實(shí)現(xiàn)在說峰髓。https這塊沒啥說的傻寂,之前項(xiàng)目里面有用到類似的東西,研究的比較清楚了携兵。raft算法這個(gè)因?yàn)閯偤迷谒?.824(才刷到lab2疾掰。。徐紧。)静檬,答的也湊合,不過paxos和zab算法確實(shí)不熟悉并级,直接說不會(huì)拂檩。MySQL這塊很熟了,包括索引嘲碧,鎖稻励,事務(wù)機(jī)制以及mvcc等等,沒啥說的愈涩,都已經(jīng)補(bǔ)齊了望抽。協(xié)程和線程,主要說了go程和Java線程的區(qū)別以及go程的調(diào)度模型履婉。面試官提示沒有提到線程的有內(nèi)核態(tài)的切換煤篙,go程只在用戶態(tài)調(diào)度。最后一個(gè)算法題毁腿,首先說使用HashMap來做辑奈,說空間復(fù)雜度能不能降到O(1),后面想了大概5min才想出來原地置換的思路狸棍。

二面項(xiàng)目技術(shù)面

  1. 主要針對自己最熟悉的項(xiàng)目身害,畫出項(xiàng)目的架構(gòu)圖,主要的數(shù)據(jù)表結(jié)構(gòu)草戈,項(xiàng)目中使用到的技術(shù)點(diǎn)塌鸯,項(xiàng)目的總峰值qps,時(shí)延唐片,以及有沒有分析過時(shí)延出現(xiàn)的耗時(shí)分別出現(xiàn)在什么地方丙猬,項(xiàng)目有啥改進(jìn)的地方?jīng)]有?
  1. 如果請求出現(xiàn)問題沒有響應(yīng)费韭,如何定位問題茧球,說下思路?
  1. tcp 粘包問題怎么處理星持?
  1. 問了下緩存更新的模式抢埋,以及會(huì)出現(xiàn)的問題和應(yīng)對思路?
  1. 除了公司項(xiàng)目之外,業(yè)務(wù)有沒有研究過知名項(xiàng)目或做出過貢獻(xiàn)揪垄?

基本都沒有啥問題穷吮,除了面試官說項(xiàng)目經(jīng)驗(yàn)稍弱之外,其余還不錯(cuò)饥努。

三面綜合技術(shù)面

這面面的是陣腳大亂捡鱼,面試官采用刨根問底的方式提問,終究是面試經(jīng)驗(yàn)不夠酷愧,導(dǎo)致面試的節(jié)奏有點(diǎn)亂驾诈。 舉個(gè)例子:

其中有個(gè)題是go程和線程有什么區(qū)別?
答:1 起一個(gè)go程大概只需要4kb的內(nèi)存溶浴,起一個(gè)Java線程需要1.5MB的內(nèi)存乍迄;go程的調(diào)度在用戶態(tài)非常輕量,Java線程的切換成本比較高戳葵。接著問為啥成本比較高就乓?因?yàn)镴ava線程的調(diào)度需要在用戶態(tài)和內(nèi)核態(tài)切換所以成本高?為啥在用戶態(tài)和內(nèi)核態(tài)之間切換調(diào)度成本比較高拱烁?簡單說了下內(nèi)核態(tài)和用戶態(tài)的定義生蚁。接著問,還是沒有明白為啥成本高戏自?心里瞬間崩潰邦投,沒完沒了了呀,OS這塊依舊是痛呀擅笔,支支吾吾半天放棄了志衣。
后面所有的提問都是這種模式,結(jié)果回答的節(jié)奏全無猛们,感覺被套路了念脯。大多度都能回答個(gè)一二甚至是一二三,但是再往后或者再深入的OS層面就GG了弯淘。

后面問了下項(xiàng)目過程中遇到的最大的挑戰(zhàn)绿店,以及時(shí)怎么解決的?

后面還問了一個(gè)問題定位的問題庐橙,服務(wù)器CPU 100%怎么定位假勿?可能是由于平時(shí)定位業(yè)務(wù)問題的思維定勢,加之處于蒙蔽狀態(tài)态鳖,隨口就是:先查看監(jiān)控面板看有無突發(fā)流量異常转培,接著查看業(yè)務(wù)日志是否有異常,針對CPU100%那個(gè)時(shí)間段浆竭,取一個(gè)典型業(yè)務(wù)流程的日志查看浸须。最后才提到使用top命令來監(jiān)控看是哪個(gè)進(jìn)程占用到100%惨寿。

果然陣腳大亂携添,張口就來弄慰,捂臉。。易稠。

本來正確的思路應(yīng)該是先用top定位出問題的進(jìn)程,再用top定位到出問題的線程包蓝,再打印線程堆棧查看運(yùn)行情況驶社,這個(gè)流程換平時(shí)肯定能答出來,但是测萎,但是沒有但是亡电。還是得好好總結(jié)。

最后問了一個(gè)系統(tǒng)設(shè)計(jì)題目(朋友圈的設(shè)計(jì))硅瞧,白板上面畫出系統(tǒng)的架構(gòu)圖份乒,主要的表結(jié)構(gòu)和講解主要的業(yè)務(wù)流程,如果用戶變多流量變大腕唧,架構(gòu)將怎么擴(kuò)展或辖,怎樣應(yīng)對?

這個(gè)答的也有點(diǎn)亂枣接,直接上來自顧自的用了一個(gè)通用的架構(gòu)颂暇,感覺毫無亮點(diǎn)。后面反思應(yīng)該先定位業(yè)務(wù)的特點(diǎn)但惶,這個(gè)業(yè)務(wù)明顯是讀多寫少耳鸯,然后和面試官溝通一期剛開始的方案的用戶量,性能要求膀曾,單機(jī)目標(biāo)qps是什么等等县爬?在明確系統(tǒng)的特點(diǎn)和約束之后再來設(shè)計(jì),而不是一開始就是用典型互聯(lián)網(wǎng)的那種通用架構(gòu)自顧自己搞自己的方案添谊。

3天后收到短信被拒

總結(jié)

  • tcp/udp财喳,http和https還有網(wǎng)絡(luò)這塊(各種網(wǎng)絡(luò)模型,已經(jīng)select碉钠,poll和epoll)一定要非常熟悉
  • 一定要有拿的出手的項(xiàng)目經(jīng)驗(yàn)纲缓,而且要能夠講清楚,講清楚項(xiàng)目中取舍喊废,設(shè)計(jì)模型和數(shù)據(jù)表
  • 分布式要非常熟悉
  • 常見問題定位一定要有思路
  • 操作系統(tǒng)祝高,還是操作系統(tǒng),重要的事情說三遍
  • 系統(tǒng)設(shè)計(jì)污筷,思路工闺,思路乍赫,思路,一定要思路清晰陆蟆,一定要總結(jié)下系統(tǒng)設(shè)計(jì)的流程
  • 一點(diǎn)很重要的心得雷厂,平時(shí)blog和專欄看的再多,如果沒有自己的思考不過是過眼云煙叠殷,根本不會(huì)成為自己的東西改鲫,就像內(nèi)核態(tài)和用戶態(tài),平常也看過林束,但是沒細(xì)想像棘,突然要自己說,還真說不出來壶冒,這就很尷尬了缕题。勿以浮沙筑高臺,基礎(chǔ)這種東西還是需要時(shí)間去慢慢打牢胖腾,多去思考和總結(jié)烟零。

以上就是面試鵝廠的面試題與總結(jié),以下就是該面試題的參考答案咸作。

面試題答案锨阿,獲取方式

請加QQ群:976203838

獲取以上面試題答案傳送門:https://shimo.im/docs/R6zZRIikthw8jifV

重要的話說三遍,先 關(guān)注性宏,關(guān)注群井,關(guān)注,然后加群才可拿到參考答案哦毫胜!


原文出處:https://segmentfault.com/a/1190000017864721

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末书斜,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子酵使,更是在濱河造成了極大的恐慌荐吉,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件口渔,死亡現(xiàn)場離奇詭異样屠,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)缺脉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進(jìn)店門痪欲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人攻礼,你說我怎么就攤上這事业踢。” “怎么了礁扮?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵知举,是天一觀的道長瞬沦。 經(jīng)常有香客問我,道長雇锡,這世上最難降的妖魔是什么逛钻? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮锰提,結(jié)果婚禮上曙痘,老公的妹妹穿的比我還像新娘。我一直安慰自己欲账,他們只是感情好屡江,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著赛不,像睡著了一般。 火紅的嫁衣襯著肌膚如雪罢洲。 梳的紋絲不亂的頭發(fā)上踢故,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天,我揣著相機(jī)與錄音惹苗,去河邊找鬼殿较。 笑死,一個(gè)胖子當(dāng)著我的面吹牛桩蓉,可吹牛的內(nèi)容都是我干的淋纲。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼院究,長吁一口氣:“原來是場噩夢啊……” “哼洽瞬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起业汰,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤伙窃,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后样漆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體为障,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年放祟,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了鳍怨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡跪妥,死狀恐怖鞋喇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情骗奖,我是刑警寧澤确徙,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布醒串,位于F島的核電站,受9級特大地震影響鄙皇,放射性物質(zhì)發(fā)生泄漏芜赌。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一伴逸、第九天 我趴在偏房一處隱蔽的房頂上張望缠沈。 院中可真熱鬧,春花似錦错蝴、人聲如沸洲愤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽柬赐。三九已至,卻和暖如春官紫,著一層夾襖步出監(jiān)牢的瞬間肛宋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工束世, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留酝陈,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓毁涉,卻偏偏與公主長得像沉帮,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子贫堰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容