螞蟻金服一面:
- 先自我介紹,講講自己基礎掌握情況,以及項目經曆平時會用到哪些資料結構?
- 連結清單和數組的優缺點?
- 解決hash沖突的方法有哪些?
- 講講自己對HashMap的了解,以及和Weakhashmap的差別?
- 你剛才講的是JDK1.7版本的實作,知道JDK1.8做了哪些改動麼?
- 你們在微服務中用RPC通信還是REST?
- RPC和HTTP的關系是什麼?
- 談談什麼是HTTP的長連接配接和短連接配接?
- TCP的三次握手和四次揮手,以及為什麼要三次握手,而不是二次?
- TCP 有哪些狀态,相應狀态的含義?并發包中鎖的實作底層(對AQS的了解)?
- 樂觀鎖和悲觀鎖的了解及如何實作,有哪些實作方式?
- SynchronizedMap和ConcurrentHashMap有什麼差別?如何使用阻塞隊列實作一個生産者和消費者模型?
- 簡述一下Java 垃圾回收機制?
- 如何判斷一個對象是否存活?
- 什麼是tomcat類加載機制?
- 類加載器雙親委派模型機制?
- 讓你評價一下你自己?
螞蟻金服二面:
- 扯了下項目、講一下項目經曆redis的底層資料結構了解多少?
- 知道動态字元串sds的優缺點麼(redis底層資料結構之一)?
- redis的單線程特性有什麼優缺點?
- 用過 Redis 的哪些資料結構, 分别用在什麼場景?怎麼解決緩存擊穿問題的?
- Hytrix的隔離機制有哪些?
- Hytrix常見配置是哪些?
- 做過哪些調優?
- JVM調優、資料庫調優都行!給了個場景,問你怎麼調?
螞蟻金服三面:
- 依然是介紹自己資料庫的高可用架構是怎麼樣的?
- 如何保證資料庫主從一緻性?
- 知道mysql的索引算法嗎?
- 為什麼mongodb的索引用了B樹,而mysql用B+樹?
- 用mysql過程中,有遇到什麼問題麼?
- 生産用的是哪種事務隔離級别,為什麼?
- 談一談你對微服務架構的了解?
- 用過哪些RPC架構,講講他們優缺點?
- 用過docker嗎,對容器了解多少?
螞蟻金服四面:
聊人生談理想,HR很ncie,主要交流為什麼選擇來阿裡,未來的打算職業規劃以及待遇等,交流挺愉快。
面試經驗總結:
技術基礎必須紮實:算法、資料結構、作業系統等,螞蟻金服面試對技術的基礎非常重視,基礎紮實的同學有利于在前兩輪突出重圍。
技術寬度:主要集中在高并發、多線程、分布式架構,大以及常用中間件(緩存等)的選型和比較。
技術原理深入:重點還是提前準備好JVM、多線程高并發這塊。
參與的項目總結:你需要清楚你所做項目的關鍵細節、優化、特點、原理。
很多所用第三方庫&中間件等的原理,即使你不知道,也要有自己的想法能夠說出如何代替實作,比如單點登入的替代方案。
以上就螞蟻金服後端研發面試題,以下該面試題的部分參考答案。
面試資料整理彙總
這些面試題是我朋友進阿裡前狂刷七遍以上的面試資料,由于面試文檔很多,内容更多,沒有辦法一一為大家展示出來,是以隻好為大家節選出來了一部分供大家參考,需要全部文檔的,關注小編後,點選這裡即可免費領取。
面試的本質不是考試,而是告訴面試官你會做什麼,是以,這些面試資料中提到的技術也是要學會的,不然稍微改動一下你就涼涼了
88/java-p7)。
面試的本質不是考試,而是告訴面試官你會做什麼,是以,這些面試資料中提到的技術也是要學會的,不然稍微改動一下你就涼涼了
在這裡祝大家能夠拿到心儀的offer!