一直有個大廠的心,復工回來,就開始看大廠機會,有幸接到了阿里的面試,非常榮幸,很快就拿到了Offer,一個字就是"爽" 經歷了三輪技術面和一輪Hr面,面試官們都非常nice,為了幫助更多人想進阿里巴巴的同學完成夢想,特地整理了面試的問題,給大家一些建議,希望大家也能拿到自己心儀的Offer
阿里一面:
- 介紹一下自己,
- 專案參與的核心設計有哪些
- java反射原理, 注解原理?
- ArrayList和LinkedList的插入和訪問的時間復雜度?
- 說說一致性 Hash 原理
- HashMap及執行緒安全的ConcurrentHashMap,以及各自優劣勢
- https和http區別,有沒有用過其他安全傳輸手段?
- SQL優化,常用的索引?
- 請詳細描述springmvc處理請求全流程?
- 專案用 Spring 比較多,有沒有了解 Spring 的原理?AOP 和 IOC 的原理
- 1.8還采用了紅黑樹,講講紅黑樹的特性,為什么人家一定要用紅黑樹而不是AVL、B樹之類的?
- 執行緒池的作業原理,幾個重要引數,然后給了具體幾個引數分析執行緒池會怎么做,最后問阻塞佇列的作用是什么?
- Synchronized和Lock哪個更好?
- ArrayList和LinkedList底層
阿里二面:
- 先直接問做過哪些Java開發相關的專案,
- 資料庫索引,底層是怎樣實作的,為什么要用B樹索引?
- Mysql主從同步的實作原理?
- 兩個10G的檔案,里面是一些url,記憶體只有1G,如何將這兩個檔案合并,找到相同的url?
- 代碼題:兩個有序陣列,陣列中存在重復數字,合并成一個有序陣列,去除重復數字,
- 有使用過哪些NoSQL資料庫?MongoDB和Redis適用哪些場景?
- 描述分布式事務之TCC服務設計?
- Redis 的 list zset 的底層實作
- 分布式 session 的共享方案有哪些,有什么優劣勢
- 從千萬的資料到億級的資料,會面臨哪些技術挑戰?你的技術解決思路?
- 排序演算法的復雜度,快速排序非遞回實作,
阿里三面:
- jvm性能調優都做了什么
- 分布式系統原理:CAP,最終一致性,冪等操作等
- 高并發情況下,我們系統是如何支撐大量的請求的
- 什么情況會出現雪崩,以及如何應對?
- 集群監控的時候,重點需要關注哪些技術指標?這些指標如何優化?
- 分布式架構設計哪方面比較熟悉
- 介紹你實踐的性能優化案例,以及你的優化思路
- 談談分布式鎖、以及分布式全域唯一ID的實作比較?
- 談一個你覺得你學到最多的專案,使用了什么技術,挑戰在哪里
- 最近兩年遇到的最大的挫折,從挫折中學到了什么?
阿里四面
- 專案介紹
- 聽到說做了限流,限流標準(并發數? qps?并發數和qps關系?說出了5種限流方案和對應演算法原理)
- dubbo呼叫端怎么在jvm中生成對應服務?dubbo服務端和呼叫端超時時間設定和區別、dubbo長連接,
- mysql行鎖最大并發數?(秒殺專案指出)
- 設計秒殺系統,我說的異步的方式,會問怎么優化?改為了同步的方式,異步和同步區別? 然后我也問了阿里那邊
- 碰到哪些技術難點?怎么解決?有沒有參考其他大廠?其他大廠方案什么樣的?有沒有關注阿里這邊最新的技術?
- 剛剛的秒殺系統,會涉及到多個庫表的更新,分布式事務怎么解決,我說的訊息最終一致性,異步?有沒有更好的方案?同步TCC方式,TCC方式原理?(三個階段的具體實作)
HR面
- 自我介紹
- 如何學習新技術?
- 如何團隊合作的?
- 職業規劃
由于文章的篇幅有限,所以這次的阿里面試題答案整理在了PDF檔案里
整理了一套 2020 最新的 Java 面試題,基本上覆寫了所有的面試知識點,包括的內容如下:
Java基礎,容器,多執行緒,反射,Java web模塊,網路,設計模式,SpringMVC,SpringBoot,SpringCloud,Hibernate,Mybatis,中間件(RabbitMQ,Kafaka,Zookeeper),資料庫(MySQL,Redis)和JVM等相關內容,
需要獲取得話麻煩一鍵三連之后看下圖小助理的微信:(13210158912)添加即可免費獲取到哦


如果大家看的還不過癮,再來份美團架構師總結的面試知識點,看完兩份BAT so easy!


轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/225835.html
標籤:其他
