羣友初次遠程面試螞蟻金服,三面過後本以爲涼涼,沒想到直接被錄取了
當前環境,很多公司都採取了遠程辦公,遠程面試。有一說一,第一次遠程面試,還是比較緊張的。
image
螞蟻金服面試(視頻一面)
-
Java容器有哪些?哪些是同步容器,哪些是併發容器?
-
爲什麼 Java 要採用垃圾回收機制,而不採用 C/C++的顯式內存管理?
-
一個線程的生命週期有哪幾種狀態?它們之間如何流轉的?
-
什麼是活鎖、飢餓、無鎖、死鎖?怎麼檢測一個線程是否擁有鎖?
-
如何解決同時存在的對象創建和對象回收問題
-
說說一致性 Hash 原理
-
新生代分爲幾個區?使用什麼算法進行垃圾回收?爲什麼使用這個算法?
-
HashMap在什麼情況下會擴容,或者有哪些操作會導致擴容?
-
HashMap檢測到hash衝突後,將元素插入在鏈表的末尾還是開頭?
-
1.8還採用了紅黑樹,講講紅黑樹的特性,爲什麼大家一定要用紅黑樹而不是AVL、B樹之類的?
-
https和http區別,有沒有用過其他安全傳輸手段?
-
線程池的工作原理,幾個重要參數,然後給了具體幾個參數分析線程池會怎麼做,最後問阻塞隊列的作用是什麼?
-
RabbitMQ 上的一個 queue 中存放的 message 是否有數量限制?
-
RabbitMQ 允許發送的 message 最大可達多大?
-
有使用過哪些NoSQL數據庫?MongoDB和Redis適用哪些場景?
-
項目用 Spring 比較多,有沒有了解 Spring 的原理?AOP 和 IOC 的原理
螞蟻螞蟻金服面試(視頻二面)
-
查詢中哪些情況不會使用索引?
-
描述分佈式事務之TCC服務設計?
-
數據庫索引,底層是怎樣實現的,爲什麼要用B樹索引?
-
Mysql主從同步的實現原理?
-
MySQL是怎麼用B+樹?
-
談談數據庫樂觀鎖與悲觀鎖?
-
Redis和memcache有什麼區別?Redis爲什麼比memcache有優勢?
-
Redis 的數據結構
-
海量數據過濾,黑名單過濾一個 url。
-
講一講AtomicInteger,爲什麼要用CAS而不是synchronized?
螞蟻金服三面(視頻三面)
-
考慮redis的時候,有沒有考慮容量?大概數據量會有多少?
-
Redis 的 list zset 的底層實現
-
分佈式架構設計哪方面比較熟悉
-
分佈式 session 的共享方案有哪些,有什麼優劣勢
-
談談分佈式鎖、以及分佈式全局唯一ID的實現比較?
-
集羣監控的時候,重點需要關注哪些技術指標?這些指標如何優化?
-
從千萬的數據到億級的數據,會面臨哪些技術挑戰?你的技術解決思路?
-
排序算法的複雜度,快速排序非遞歸實現。
-
消息中間件有哪些?他們之間的優劣勢?
-
介紹項目
-
介紹你實踐的性能優化案例,以及你的優化思路
視頻面試之後,我總結了下,問的都不算難,雖然不是很順暢,但問題也都回答上了,就是通過視頻的形式來面試,總感覺怪怪的。本以爲已經沒戲了,誰知道2天后收到通知,竟然過了!現在正在考慮要不要辭職過去...
當然,大廠的面試,是一個系統規範化的流程,除了Redis、MQ這些必備品外,每一個簡歷都會有一句Java基礎紮實(有沒有被說中),那麼,到底怎麼樣算Java基礎紮實?
1、集合,例如 List、Map的原理,HashMap基本必問這個不用我多說
2、併發,例如線程、線程池,鎖相關,這些也基本必問
3、JVM,例如垃圾回收器,垃圾回收算法,OOM處理,jvm參數及調優
上面說的這些,是最最最基本的面試標配了。
首先來說下對於簡歷的準備。MQ、Redis這兩個是標配沒跑的了。爲啥?你要突出你的核心競爭力,無非圍繞高併發、高可用、海量數據這幾個點出發。
其次,核心競爭力也體現在分佈式解決方案的真實落地實踐,但是這些分佈式解決方案,也很大程度上依賴 Redis和 MQ。
比如分佈式session需要依賴 Redis,分佈式事務最終一致性需要依賴 MQ。也就是說,一份優秀的簡歷,深入 Redis和 MQ這兩個,都是避無可避!
以下主要分享面經和個人學習方法,會包括很多PDF文檔,如面試題庫(含答案+解析)、學習筆記、實戰文檔和腦圖等等,均可以免費分享,
由於文章的篇幅有限,所以這次的阿里面試題答案整理在了PDF文檔裏
image
image
如果簡歷上只是做的項目不同,但是實質都是簡單的CRUD,那麼沒面試之前,已經給淘汰得差不多了。
通過數十家面試的觀察,對於Redis和MQ,考察的方向,其實也是有跡可循的。首先他們的高可用是怎麼保證的,原理是怎麼樣的,幾乎必問(不信你可以自己觀察)。當然還會根據你的回答往下繼續拓展問題,每個人回答得不一樣,自然拓展的問題也不一樣。
以下我會分享一些我個人的學習文檔,有需要的朋友自行選擇獲取:
- Java核心知識整理
image
Spring全家桶系列
image
性能優化(JVM+Tomcat+MySQL)答案解析整理
image
分佈式(限流+緩存+通訊)答案解析整理:
image
刷題:
既然是要面試,那麼就少不了刷題,實際上春節回家後,哪兒也去不了,我自己是刷了不少面試題的,所以在面試過程中才能夠做到心中有數,基本上會清楚面試過程中會問到哪些知識點,高頻題又有哪些,所以刷題是面試前期準備過程中非常重要的一點。
image
很多人感嘆“學習無用”,實際上之所以產生無用論,是因爲自己想要的與自己所學的匹配不上,這也就意味着自己學得遠遠不夠。無論是學習還是工作,都應該有主動性,所以如果擁有大廠夢,那麼就要自己努力去實現它。
以上學習資料均免費放送,最後祝願各位順利拿到心儀的offer!
資料獲取方式:點擊我的複習筆記【免費獲取】