1. 程式人生 > >阿里螞蟻金服中介軟體6輪面試!實拍題目和6點血淚總結!

阿里螞蟻金服中介軟體6輪面試!實拍題目和6點血淚總結!

螞蟻金服一面:分散式架構 50分鐘

1、個人介紹加專案介紹20分鐘

2、微服務架構是什麼,它的優缺點?

3、ACID CAP BASE理論

4、分散式一致性協議,二段、三段、TCC,優缺點

5、RPC過程

6、服務註冊中心宕機了怎麼辦?

7、微服務還有其他什麼元件

8、分散式架構與微服務的關係

9、你有什麼問題要問我的。

螞蟻金服二面:1個小時

上來不用自我介紹,專案介紹,直接開始

演算法來兩道

1、各種排序演算法、未排序常規資料查詢第K大的數,時間複雜度。

2、二叉樹的深度

作業系統來兩道

3、虛擬記憶體分頁瞭解不?

4、程序和執行緒區別?

資料庫來三道

5、第一二三正規化是什麼?

6、一個表一千個列值為true和false,寫sql 查詢 有300個列值為true的行。

7、髒讀和幻讀是什麼?

JVM

8、什麼物件會從新生代晉升到老年代

多執行緒

9、一個任務分成十個任務,最後彙總計算,不能用fork/join

10、開源框架原始碼瞭解不?

11、資料建模兩道、個人題開放性題

安全方面的問題

12、對安全方面瞭解多少?

13、 安全協議有哪些 、https是啥?

介紹你做的專案和其中的難點。

三面

個人感覺著重技術深度。

1、從ConcurrentHashMap一路問到鎖&鎖優化->LongAdder->偽共享->快取行填充->cas等諸多技術細節;

2、從hystrix一路問到原理->自己如何實現->如何優化->響應流程式設計(reactive streams);

3、從簡單的生產者消費者模式設計到如何高效健壯實現等等。

四面

1、如何倒序輸出單向連結串列?

2、個人直接想法是用棧先進後出的特點,把連結串列資料讀到棧裡然後輸出。

3、有更好的實現方式嗎?

4、主要問專案情況,然後根據一個專案,問如果量級擴大1000倍,你會怎麼做?有哪些優化措施?高效能&高可用措施?

五面:HR面

給大家丟擲幾大深坑問題:

1、個人的職業規劃是什麼

2、你遇到的最大問題或者是困難是什麼

3、你如何看待阿里

4、你能為阿里帶來什麼

5、你的優缺點是什麼

這幾個問題,大家深思啊,不多說。

面試總結:

1.技術基礎必須紮實:演算法、資料結構、作業系統等,螞蟻金服面試對技術的基礎非常重視,基礎紮實的同學有利於在前兩輪突出重圍。

2.技術寬度:主要集中在高併發、多執行緒、分散式架構,大以及常用中介軟體(快取等)的選型和比較。

3.技術原理深入:重點還是提前準備好JVM、多執行緒高併發這塊。

4.參與的專案總結:你需要清楚你所做專案的關鍵細節、優化、特點、原理。

5.很多所用第三方庫&中介軟體等的原理,即使你不知道,也要有自己的想法能夠說出如何代替實現,比如單點登入的替代方案。

6.最好,提前準備一個大資料訪問,比如pv擴大1000倍,你的架構或者技術方案應對措施。

7.最後,千萬不要倒在HR面試環節,避重就輕是重點,特別是優點和缺點,如果問到你的規劃是什麼,請記得一定告訴HR你想成為一名優秀的技術專家!

以上就是我的6總結,這些都是不斷面試積累來的經驗,分享出來避免更多同學少走彎路,早日進入BAT等一線網際網路公司!

如果你現在在技術上面遇到了瓶頸,在技術方面得不到進展,你都可以加群:795632998,群內提供免費的Java架構學習資料(裡面有高可用、高併發、高效能及分散式、Jvm效能調優、Spring原始碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)合理利用自己每一分每一秒的時間來學習提升自己