最近一個朋友跟我說,現在面試太難了,再也不是以前那種隨便背幾個面試題然后就能拿到offer的時候了,最近準備換作業面試了阿里,和我交流了下他遇到的一些面試題,然后我整理了一下,就分享給有需要的朋友們順便也查漏補缺一下,
一面:
1.開始是自我介紹;
2.HashMap的實作原理,什么是hash碰撞,怎樣解決hash碰撞?
3.ConcurrentHashMap的原理,與HashTable的區別?
4.HashSet和TreeSet的區別以及底層實作原理
5.HashMap中存key-value,value有重復但是都是Comparable型別可比較;怎樣根據value排序此集合,介紹實作方法
6.ReentrantLock和synchronized關鍵字有什么區別?
7.synchronized 修飾static方法,具體鎖的是什么?
8.作業當中cpu和記憶體例外排查方法;詳細說明分析程序及定位解決方式
9.接著是講專案:
專案里的問題比較簡單; 然后就是各種基礎,jvm記憶體模型,nio,bio,aio,高并發,sychronized和volltail,HashMap,資料結構和擴容,
還有一些場景題目,大并發/海量數量的情況下,怎么設計系統,從里面拿出兩點來問,一個是系統解耦,一個是分庫分表,
最后一個是編碼題,HashMap里key是自定義物件的情況,排序 jvm問的比較多,線上發版如何做到分批發的,redis命令,資料結構,資料庫內部鎖機制,線上問題解決,sql優化等等;
二面:
1.ClassLoader的原理,舉出應用場景及作業實體,介紹類加載程序及作業中的應用
2.HashMap的實作原理,什么是hash碰撞,怎樣解決hash碰撞?
3.ConcurrentHashMap的原理,與HashTable的區別?
4.HashSet和TreeSet的區別以及底層實作原理
5.HashMap中存key-value,value有重復但是都是Comparable型別可比較;怎樣根據value排序此集合,介紹實作方法
6.ReentrantLock和synchronized關鍵字有什么區別?
7.synchronized 修飾static方法,具體鎖的是什么?
8.作業當中cpu和記憶體例外排查方法;詳細說明分析程序及定位解決方式
9,一個jvm的原理及優化;
10.sql的優化;
11.現在使用的框架原理,比如使用了dubbo,會問dubbo的原理,還有h5怎么呼叫dubbo等;
12.接著是講專案,專案里的問題比較簡單;
13.然后就是各種基礎,jvm記憶體模型,nio,bio,aio,高并發sychronized和volltail,HashMap,資料結構和擴容;
14.還有一些場景題目,大并發/海量數量的情況下,怎么設計系統,從里面拿出兩點來問,一個是系統解耦,一個是分庫分表;
15.最后一個是編碼題,HashMap里key是自定義物件的情況,排序
下面這個鏈接,暗號: csdn ,加入即可獲得,
三面
1、executor service實作的方法,可以設定的引數;
2、出了個演算法提,找出鏈表中倒數第n個節點;
3、還問了thread和runable的區別;
4、聚簇索引是什么;
5、redis問了一個實際問題的解決辦法,如果redis一個value特別大,有什么解決方案;
6、redis記憶體淘汰機制;
7、mysql的默認隔離級別;
8、 堆排序
9.、paxos協議
10、跨機房部署,遇到的問題及解決方案,全年的9999率
11、MMM的DB架構,主從未完全同步,master掛了,未同步的內容會造成什么影響,怎么恢復
12、ng和tomcat什么區別?能否將兩者角色互換,即:tomcat做反向代理,ng做服務容器,說明原因,
13、DNS協議
14、volatile實作原理
15、NAT:公網ip和局域網ip轉換
16.類加載委托機制,鎖的應用,專案架構
四面:
0、 jit,nio,排序演算法,hashmap,更多的是專案細節~
1、談談專案里主要負責了什么,負責的專案是怎樣的架構,自己負責了什么等等; 2、JVM類加載機制;
3、JVM記憶體模型,堆疊空間都放什么,什么情況下堆疊記憶體會溢位等;
4、JVM調優;
5、JVM垃圾收集機制;
6、比較關心金融方面的知識是否了解,是否有過金融專案開發的經驗;
7、jvm柵欄問題,threadlocal的使用;
8、JVM
9、多執行緒
10、List求交集
11、解決專案運行時,CPU占用過高的問題
12、執行緒同步幾種機制
13、linux檢索log,匹配某一請求最多的top10
最后:
提供【免費】的Java架構學習資料,學習技術內容包含有:Spring,Dubbo,MyBatis, RPC, 原始碼分析,高并發、高性能、分布式,性能優化,微服務 高級架構開發等等,
資料獲取方式:
點擊鏈接《Java面試BAT通關手冊》獲取,覆寫了Java核心技術、JVM、Java并發、SSM、微服務、資料庫、資料結構等等,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/84932.html
標籤:Java
