日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

簡單說一下吧,本人疫情還沒開始時面試過一次鵝廠,在MySQL、redis這方面慘敗,經過半年的沉淀,加上對MySQL,redis和分布式這塊的補齊,終于重拾面試信心,再次出征。

二戰騰訊

面試職位:go后端開發工程師,接受從JAVA轉語言。

都知道騰訊是cpp的主戰場,而以cpp為背景的工程師大都對os,network這塊要求特別高,不像是Java這種偏重業務層的語言。

之前面試Java的公司側重還是在數據結構、網絡、框架、數據庫和分布式。所以OS這塊吃的虧比大。

一面:基礎技術面

電話面試,隨便問了些技術問題,最后還問了個LeetCode里面medium級別的算法題,偏簡單。大概整理回憶了一下:

  • redis有沒有用過,常用的數據結構以及在業務中使用的場景。
  • redis的hash怎么實現的?
  • rehash過程講一下和JavaHashMap的rehash有什么區別?
  • redis cluster有沒有了解過,怎么做到高可用的?
  • 說說redis的持久化機制,為啥不能用redis做專門的持久化數據庫存儲?
  • 了不了解tcp/udp,說下兩者的定義,tcp為什么要三次握手和四次揮手?
  • tcp怎么保證有序傳輸的,講下tcp的快速重傳和擁塞機制
  • 知不知道time_wait狀態,這個狀態出現在什么地方,有什么用?
  • udp是不可靠的傳輸,如果你來設計一個基于udp差不多可靠的算法,怎么設計?
  • http與https有啥區別?說下https解決了什么問題,怎么解決的?說下https的握手過程。
  • 看你項目里面用了etcd,講解下etcd干什么用的,怎么保證高可用和一致性?
  • 既然你提到了raft算法,講下raft算法的基本流程?raft算法里面如果出現腦裂怎么處理?
  • 有沒有了解過paxos和zookeeper的zab算法,他們之前有啥區別?
  • 你們后端用什么數據庫做持久化的?有沒有用到分庫分表,怎么做的?
  • 索引的常見實現方式有哪些,有哪些區別?
  • MySQL的存儲引擎有哪些,有哪些區別?
  • InnoDB使用的是什么方式實現索引,怎么實現的?說下聚簇索引和非聚簇索引的區別?
  • 有沒有了解過協程?說下協程和線程的區別?
  • 算法題一個,劍指offer第51題,數組中的重復數字?

大概說下我自己的回答情況,redis這塊沒啥問題,具體rehash有印象是漸進式的,但是具體原理可能答的有點出入。

tcp的 time_wait 這塊答的不是很好,之前沒有了解過quic機制的實現,所以問可靠性udp的時候,基本上腦子里就照著tcp的實現在說。

https這塊沒啥說的,之前項目里面有用到類似的東西,研究的比較清楚了。

raft算法這個因為剛好在刷6.824(才刷到lab2。。。),答的也湊合,不過paxos和zab算法確實不熟悉,直接說不會。

MySQL這塊很熟了,包括索引,鎖,事務機制以及mvcc等等,沒啥說的,都已經補齊了。

協程和線程,主要說了go程和Java線程的區別以及go程的調度模型。面試官提示沒有提到線程的有內核態的切換,go程只在用戶態調度。

最后一個算法題,首先說使用HashMap來做,說空間復雜度能不能降到O(1),后面想了大概5min才想出來原地置換的思路。

總得來說,答的還行,一面就這么過了。

二面:項目技術面

二面從基礎技術考察轉移到了項目,主要問了我下面一些問題:

  • 針對自己最熟悉的項目,畫出項目的架構圖,項目主要的數據表結構。
  • 說說項目中使用到的技術點,項目的總峰值qps,時延。
  • 有沒有分析過時延出現的耗時分別出現在什么地方,項目有啥改進的地方沒有?
  • 如果請求出現問題沒有響應,如何定位問題,說下思路?
  • tcp 粘包問題怎么處理?
  • 然后還問了下緩存更新的模式,以及會出現的問題和應對思路?
  • 除了公司項目之外,業余時間有沒有研究過知名項目或做出過貢獻?

這一面答的也比較順利,因為都是圍繞項目,自己很熟悉,基本都沒有啥問題,除了面試官說項目經驗稍弱之外,其余還不錯。

三面:綜合技術面

這面面的是陣腳大亂,面試官采用刨根問底的方式提問,終究是面試經驗不夠,導致面試的節奏有點亂。舉個例子:

其中有個題:go程和線程有什么區別?

答:起一個go程大概只需要4kb的內存,起一個Java線程需要1.5MB的內存;go程的調度在用戶態非常輕量,Java線程的切換成本比較高。

接著問為啥成本比較高?因為Java線程的調度需要在用戶態和內核態切換所以成本高?為啥在用戶態和內核態之間切換調度成本比較高?我簡單說了下內核態和用戶態的定義。

接著問,還是沒有明白為啥成本高?心里瞬間崩潰,沒完沒了了呀,OS這塊依舊是痛呀,支支吾吾半天放棄了。

后面所有的提問都是這種模式,結果回答的節奏全無,感覺被套路了。大多度都能回答個一二甚至是一二三,但是再往后或者再深入的OS層面就GG了。

后面問了下項目過程中遇到的最大的挑戰,以及怎么解決的?

還問了一個問題定位的問題,服務器CPU 100%怎么定位?

可能是由于平時定位業務問題的思維定勢,加之處于蒙蔽狀態,隨口就是:

  • 先查看監控面板看有無突發流量異常
  • 接著查看業務日志是否有異常,針對CPU100%那個時間段,取一個典型業務流程的日志查看
  • 最后才提到使用top命令來監控看是哪個進程占用到100%

果然陣腳大亂,張口就來,捂臉。。。

對這個問題,本來正確的思路應該是先用top定位出問題的進程,再用top定位到出問題的線程,再打印線程堆棧查看運行情況。

這個流程換平時肯定能答出來,但是,但是沒有但是。還是得好好總結。

最后問了一個系統設計題目(朋友圈的設計),白板上面畫出系統的架構圖,主要的表結構和講解主要的業務流程,如果用戶變多流量變大,架構將怎么擴展,怎樣應對?

這個答的也有點亂,直接上來自顧自的用了一個通用的架構,感覺毫無亮點。

后面反思應該先定位業務的特點,這個業務明顯是讀多寫少。然后和面試官溝通一期剛開始的方案的用戶量,性能要求,單機目標qps是什么等等?

在明確系統的特點和約束之后再來設計,而不是一開始就是用典型互聯網的那種通用架構自顧自己搞自己的方案。

當然這都是事后諸葛亮了

面試結果:3天后收到短信,被拒。。。

總結

  1. tcp/udp,http和https還有網絡這塊(各種網絡模型,已經select,poll和epoll)一定要非常熟悉
  2. 一定要有拿的出手的項目經驗,而且要能夠講清楚,講清楚項目中取舍,設計模型和數據表
  3. 分布式要非常熟悉
  4. 常見問題定位一定要有思路
  5. 操作系統,還是操作系統,重要的事情說三遍
  6. 系統設計,思路,思路,思路,一定要思路清晰,一定要總結下系統設計的流程
  7. 一點心得,平時blog和專欄看的再多,如果沒有自己的思考不過是過眼云煙,根本不會成為自己的東西,就像內核態和用戶態,平常也看過,但是沒細想,突然要自己說,還真說不出來,這就很尷尬了。勿以浮沙筑高臺,基礎這種東西還是需要時間去慢慢打牢,多去思考和總結。
  8. 少吃老干媽拌飯(手動狗頭)

分享

雖然失敗了,但是生活總要繼續,目前打算繼續提升自己再戰鵝廠,我把自己前段時間在學以及接下來打算學習的資料分享出來,希望大家都能進大廠,畢竟不想進大廠的程序員不是好程序員。

Redis

在用的實戰書籍

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

面試前刷的面試題(含答案)

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

由于頭條篇幅限制,小編無法將全部內容展示出來,本文介紹的所有資料我已經打包好啦,需要的小伙伴麻煩幫忙點贊轉發加關注一下然后私信回復【學習】二字即可得到獲取方式啦~

Mysql

在用的實戰書籍(我是兩本互相參考著學)

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

面試前刷的面試題(含答案)

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

分布式

在用的實戰書籍

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

算法

在用的實戰書籍(左神算法書)

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

面試題及答案(部分)

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

操作系統

在用的實戰書籍

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

網絡(一般我會結合視頻學習)

在用的實戰書籍

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

視頻資料

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 


二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

線程

在用的實戰書籍

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

視頻資料

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

面試題

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

全部一一展示清楚的話篇幅太長,小編已經將所有資料已經打包好了~

二戰騰訊倒在三面:我意識到自己與一線大廠程序員的差距

 

 

分享到:
標簽:程序員
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定