20大進階架構專題每日送達
來源:https://url.cn/5ofmJLA
每一個互聯網人心中都有一個大廠夢,百度、阿里巴巴、騰訊是很多互聯網人夢寐以求的地方,而我也不例外。但是,BAT等一線互聯網大廠並不是想進就能夠進的,它對人才的技術能力和學歷都是有一定要求的,所以除了學歷以外,我們的技術和能力都要過硬才行。
今年前前後後我參加了阿里巴巴兩次面試,一次是社招,一次是內推,第一次社招3面過後就被掛了,內推歷經5面拿到的offer,進入的是阿里口碑部門,分享一下這次的面經,希望能幫助到大家。
社招阿里巴巴(新零售部門),三面被掛
阿里巴巴一面(55分鐘)
先介紹一下自己吧
說一下自己的優缺點
具體講一下之前做過的項目
你覺得項目裡給裡最大的挑戰是什麼?
Hashmap為什麼不用平衡樹?
AQS知道嗎?知道哪一些呢?講一講。
CLH同步隊列是怎麼實現非公平和公平的?
ReetrantLock和synchronized的區別
講一下JVM的內存結構
JVM 裡 new 對象時,堆會發生搶佔嗎?你是怎麼去設計JVM的堆的線程安全的?
講一下redis的數據結構
redis緩存同步問題
講一講MySQL的索引結構
你有什麼問題要問我嗎?
直接口頭通知我:答得不錯,準備二面吧
阿里巴巴二面(45分鐘)
根據項目問了一些細節問題
說一下HashMap的數據結構
紅黑樹和AVL樹有什麼區別?
如何才能得到一個線程安全的HashMap?
講一下JVM常用垃圾回收期
redis分佈式鎖
再描述一下你之前的項目吧
你覺得這個項目的亮點在哪裡呢?
你設計的數據庫遵循的範式?
你有沒有問題?
阿里巴巴三面(50分鐘)
又聊項目
在項目中,併發量大的情況下,如何才能夠保證數據的一致性?
elasticsearch為什麼檢索快,它的底層數據結構是怎麼樣的?
JVM內存模型
-
netty應用在哪些中間件和框架中呢?
線程池的參數
講一下B樹和B+樹的區別
為什麼要用redis做緩存?
瞭解Springboot嗎?那講一下Springboot的啟動流程吧
如何解決bean的循環依賴問題?
Java有哪些隊列?
講一講Spring和Springboot的區別
最近看了什麼書?為什麼?
你平時是怎麼學習Java的呢?
內推阿里巴巴(阿里口碑)
5面拿offer(3輪技術面+總監面+HR面)
阿里巴巴一面(38分鐘)- 自我介紹
介紹項目, 具體一點
講一下Redis分佈式鎖的實現
HashMap瞭解麼嗎?說一下put方法過程
HashMap是不是線程安全?
ConcurrentHashMap如何保證線程安全?
數據庫索引瞭解嗎?講一下
常見排序算法
TCP三次握手,四次揮手。
深入問了樂觀鎖,悲觀鎖及其實現。
阿里巴巴二面(45分鐘)
自我介紹+項目介紹
你在項目中擔任什麼樣的角色?
那你覺得你比別人的優勢在哪裡?你用了哪些別人沒有的東西嗎?
Java怎麼加載類?
linux常用命令有哪些?
Spring的IOC, AOP。
講一下ORM框架Hibernate
設計模式瞭解嗎?講一下
自己實現一個二階段提交,如何設計?
你還有什麼想問的?
阿里巴巴三面(30分鐘)
說一下自己做的項目
問了一些項目相關的問題
wait和sleep的區別
原子變量的實現原理
CAS的問題,講一下解決方案。
有沒有更好的計數器解決策略
講一講NIO和BIO的區別
Nginx負載均衡時是如何判斷某個節點掛掉了?
講一下redis的數據類型和使用場景
k8s的儲存方式是怎樣的?
Spring AOP原理是什麼?怎麼使用?什麼是切點,什麼是切面?最好是舉個例子
算法題:給一堆硬幣的array,返回所有的組合
阿里巴巴總監面(34分鐘)
算法:給一個set打印出所有子集;多線程從多個文件中讀入數據,寫到同一個文件中;判斷ip是否在給定範圍內;打亂一副撲克牌,不能用額外空間,證明為什麼是隨機的。
Tcp和udp區別
線程池的原理以及各種線程池的應用場景
線程池中使用有限的阻塞隊列和無限的阻塞隊列的區別
如果你發現你的sql語句始終走另一個索引,但是你希望它走你想要的索引,怎麼辦?
mysql執行計劃
數據庫索引為什麼用b+樹?
你在做sql優化主要從哪幾個方面做,用到哪些方法工具?
有沒有想問的?
阿里巴巴HR面(23分鐘)
自我介紹
平時怎麼學習的?
有什麼興趣愛好嗎?
怎麼看待996?
怎麼平衡工作和學習?
有沒有什麼想問的
總結
社招時面試新零售部門,主要因為準備不充分,面試又比較緊張,所以發揮不是很好,三面之後沒有了後續。之後意識到學習的重要性,平時多拿出時間來學習,後來幸運地拿到內推資格,為了把握住這次機會,做了很多準備,好在已經拿到offer。
———— e n d ————
快年底了,師長為大家準備了三份面試寶典:
《java面試寶典5.0》
《350道Java面試題:整理自100+公司》
《資深java面試寶典-視頻版》
分別適用於初中級,中高級,以及資深級工程師的面試複習。
內容包含java基礎、javaweb、各個性能優化、JVM、鎖、高併發、反射、Spring原理、微服務、Zookeeper、數據庫、數據結構、限流熔斷降級等等。
一、初中級《java面試寶典5.0》,對標8-13K
二、中高級《350道Java面試題:整理自100+公司》,對標12-20K
三、資深《java面試突擊-視頻版》,對標20K+
閱讀更多 Java進階架構師 的文章