不知道多少人為了去阿里技術部看看,經歷過什么,本人的為了面阿里,前后準備時間和面試一共花費了6個月的時間,
在面試前三面真的有點急促,一周內就面完了三次面試,接著就開始無盡的等待,整整等了三周左右,終于完成了四面和HR面,整個程序還是比較曲折的,技術面試還是挺考察技術深度的,現在已拿到offer,
面試問題如下:一面(主要看基礎):
先自我介紹,講講自己基礎掌握情況,以及專案經歷
平時會用到哪些資料結構?
鏈表和陣列的優缺點?
解決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嗎,對容器了解多少?
四面(偏架構方面):
介紹一下自己,講講專案經歷
專案中微服務是怎么劃分的,劃分粒度怎么確定?
在實踐微服務架構中,有遇到什么問題?
在關于微服務間資料一致性問題,是如何解決的?
為什么不用其他的MQ,最終選擇了RokcetMQ?
為什么RocketMQ沒有選擇ZooKeeper,而是自己實作了一個NameServer集群?
Zookeeper在選舉的程序中,還能對外提供服務么?
對Paxos演算法了解多少?
如果讓你來設計一個春晚搶紅包架構,你會怎么設計?
有什么想問我的?
五面(HR面):
聊人生談理想,HR很ncie,主要交流為什么選擇來阿里,未來的打算職業規劃以及待遇等,交流挺愉快,(差點因為說錯話倒了......)
面試小結:
技識訓礎必須扎實:演算法、資料結構、作業系統等,螞蟻金服面試對技術的基礎非常重視,基礎扎實的同學有利于在前兩輪突出重圍,
技術寬度:主要集中在高并發、多執行緒、分布式架構,大以及常用中間件(快取等)的選型和比較,
技術原理深入:重點還是提前準備好JVM、多執行緒高并發這塊,
參與的專案總結:你需要清楚你所做專案的關鍵細節、優化、特點、原理,
很多所用第三方庫&中間件等的原理,即使你不知道,也要有自己的想法能夠說出如何代替實作,比如單點登錄的替代方案,
最后,千萬不要倒在HR面試環節,避重就輕是重點,特別是優點和缺點,如果問到你的規劃是什么,請記得一定告訴HR你想成為一名優秀的技術專家!
分享一些我個人的學習資源,有需要的朋友免費獲取方式在文末:
Java面試核心知識點原理篇整理
Java開發1—2年基礎:JVM篇
本篇主要講述了JVM原理,涉及JVM運行機制、JVM記憶體模型、常用垃圾回收演算法和JVM類加載機制等內容,


1—2年Java工程師必會:Java基礎篇
本篇講解Java基礎知識,涉及集合、例外分類及處理、反射、注解、內部類、泛型和序列化等內容,


Java開發2—3年高級工程師:Java并發編程篇
本篇講述講解Java并發編程知識,涉及Java多執行緒的作業原理及應用、Java執行緒池的作業原理及應用,以及鎖、行程調度演算法等內容,



Java面試中必問的資料結構:資料結構篇
本篇講解資料結構知識,涉及堆疊、佇列、鏈表、散串列、二叉樹、紅黑樹、圖和位圖等內容,


3—4年Java架構師必問:常用演算法篇
本篇講解Java中的常用演算法,涉及二分查找、冒泡排序、插入排序、快速排序、希爾排序、歸并排序、桶排序、基數排序等演算法,


5年Java架構師面試必問網路底層:網路與負載均衡篇
本篇講解網路與負載均衡原理,涉及TCP/IP、 HTTP、常用負載均衡演算法和LVS原理等內容,


Java架構師進階:資料庫及分布式事務篇
本篇講解資料庫及分布式事務原理,涉及資料庫存盤引擎、資料庫并發操作和鎖、資料庫分布式事務等內容,


Java高級架構師必備:分布式快取的原理及應用篇
本篇講解分布式快取的原理及應用,涉及分布式快取介紹、Ehcache原理及應用、Redis原理及應用、分布式快取設計的核心問題等內容,


設計模式篇
本篇講解設計模式,涉及常見的23種經典設計模式,


這份筆記是對Java程式員面試必備知識點的總結,詳細講解了JVM原理、多執行緒、資料結構和演算法、分布式快取、設計模式等面試必備知識點,在講解時不拖泥帶水,力求精簡,
這份筆記可以作為大家面試突擊的一份寶典,肯定會有奇效!
100%免費獲取方式:點贊這篇文章+關注我,掃碼獲取!

大廠面試真題整理

深圳-騰訊-Java高級

杭州-螞蟻金服-Java高級

杭州-螞蟻金服-資深工程師

上海-拼多多-Java高級

深圳-豐巢科技-Java高級

100%免費獲取方式:點贊這篇文章+關注我,掃碼獲取!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/197798.html
標籤:其他
上一篇:吃透Spring全家桶:Spring原始碼+SpringBoot+SpringCloud實戰
下一篇:內推阿里Java技術崗4面:JVM記憶體結構+(多執行緒、執行緒池等)+性能優化+Spring框架+一致Hash演算法+微服務分布式等
