三面阿里拿下Offer,總結與面試官交鋒兩個半小時的面經。

2020-10-21 18:00:49

前言

     前兩個月有位澳洲留學生水友跟我說準備回國啦!當時向小編詢問了國內目前的情況。

     然後前兩天該水友告訴我說拿下了阿里的offer了,所以小編連忙問下了面經,最後經過同意也可以分享給大家啦!本文將以第一人稱一起感受。

背景

     澳洲Top2本,科班出身,Java後端開發,無大廠實習經歷,年底畢業。

     看的出來,這位同學背景挺硬的

 

阿里一面(50分鐘)

  • 資料庫鎖隱原理。
  • 1000個執行緒同時執行,怎麼防止不卡?
  • 並列的並行消費問題。
  • 高並行量大的話怎麼處理熱點,資料等。
  • 如何獲取一個本地伺服器上可用的埠?
  • 流量控制相關問題。
  • 資料庫TPS是多少,是否進行測試過?
  • 快取擊穿有哪些方案解決?
  • Java怎麼挖取回收器相關原理?
  • Java的集合都有哪些,都有什麼特點?
  • 分散式鎖,redis快取,spring aop,系統架構圖,MySQL的特性。
  • 談談你對HashMap的理解,底層原理的基本實現,HashMap是怎麼解決碰撞問題的?
  • 開發中用了那些資料庫?回答mysql,儲存引擎有哪些?然後問了悲觀鎖和樂觀鎖問題使用場景、分散式叢集實現的原理。
  • springmvc和mybatis的工作原理,有沒有看過底層原始碼?
  • 熟悉IO麼?與NIO的區別,阻塞與非阻塞的區別。
  • 海量資料分析。
  • 場景,同時給10萬個人發工資,怎麼樣設計並行方案,能確保在1分鐘內全部發完。打個比方會提出類似的場景。

 

阿里二面(55分鐘)

  • 執行緒安全和非執行緒安全。
  • HTTP2.0、thrift。
  • java反射應用。
  • 分散式事務一致性。
  • nio的底層實現。
  • jvm基礎是必問的,jvm GC原理,JVM怎麼回收記憶體。
  • API介面與SDI介面的區別。
  • dubbo如何一條連結並行多個呼叫。Dubbo的原理,序列化相關問題。
  • 用過哪些中介軟體?
  • 做過工作流引擎沒有?
  • 以前的工作經歷,自己覺得有哪些出彩的地方?
  • 執行緒池的一些原理,鎖的機制升降級。
  • 從系統層面考慮,分散式從哪些緯度考慮?
  • Hadoop底層怎麼實現。
  • threadLocal,執行緒池,hashMap/hashTable/coccurentHashMap等。
  • 秒殺系統的設計。
  • 虛擬機器器,IO相關知識點。
  • Linux的命令。
  • 一個整形陣列,給定一個數,在陣列中找出兩個數的和等於這個數,並列印出來,我寫的時間複雜度高,要求O(n)。
  • n個整數,找出連續的m個數加和是最大。

 

阿里三面(40分鐘)

  • 講講網路分層,每一層都有哪些協定(TCP/IP五層模型)
  • 瀏覽器從輸入URL到頁面顯示的過程中發生了什麼,越詳細越好 (我回答解析URL,解析DNS(快取未命中的情況下需要從根域名開始遞迴查詢),建立TCP連線,http請求與答覆,Render樹的建立,頁面的渲染)
  • 講講http報文的格式?請求和答覆有什麼不同
  • 現在有1T的文字資料,每行表示一個關鍵詞,求出現次數最高的10個關鍵詞,限定單機只有4G記憶體。(我回答先假定記憶體足夠,則用HashMap加小根堆可解, 再解決記憶體的問題:先用hash方法把1T的文字檔案雜湊成多個足以讀入記憶體的小文字檔案,分別對每個檔案做統計,最後對每個檔案的統計結果做***計)
  • 你覺得你的方案有什麼不足嗎(我回答的資料分佈可能不均勻,可對文字資料採用多次hash,直至單個資料樣本足夠小)
  • 現在有一個包含上億條目的表,現實中會有大量的使用者在這個表上做基於uuid的查詢操作,如何改良這個系統的可用性(我回答對這張表的uuid用雜湊法做水平切分並建立索引,然後在使用者查詢時用同樣的雜湊演演算法導向到相應的表)
  • 你說的是資料庫層面的優化,對別的層面有什麼想法嗎,比如使用者查詢存在高峰期,如何在節約伺服器資源的前提下保證對高並行的容忍度。(我回答在伺服器端建立令牌池,每隔固定時間向其中發放令牌,令牌總數有限。每個查詢在執行前必須先獲取令牌。令牌總數即為某個時刻下伺服器可承載的最大並行數,令牌發放間隔即為最大使用者增速)

 

總結

     面試體驗好,面試官親切,問問題時會做一些引導和提示,也會告訴你哪些方面存在不足,

     有一個小插曲,小編之前就提到過阿里喜歡搞突擊面試,你也不知道什麼時候會突然來電話(一面和二面的時候水友就在睡覺)。

     最後把面試資料免費分享給大家,讓你也能成為下一位大佬!

    資料領取:戳這裡免費領取,暗號:CSDN

 

愛程式設計,愛分享,聽說點贊+關注的都進大廠了哦!!!