10年Java開發經驗,超過500人面試阿里的同學,總結出這108道面試題!
很多同學想進大廠,特別是剛畢業的,以及工作年限短的,不要有任何僥倖心理,踏踏實實的把基礎弄紮實了,這是你 通往高薪之路的唯一正確姿勢。
首先從面試題做起~好了,不多說了,直接上正菜。
01 Mysql
1. 資料庫三正規化及判斷、E-R圖
2. innodb和myisam儲存引擎的區別
3. 索引分類(主鍵、唯一索引、全文索引、覆蓋索引等等),最左字首原則,哪些條件無法使用索引
4. B樹、B+樹區別,索引為何使用B+樹
5. 聚集索引與非聚集索引(使用非聚集索引的查詢過程)
6. 事務的ACID(原子性、一致性、隔離性、永續性)
7. 事務隔離級別和各自存在的問題(髒讀、不可重複讀、幻讀)和解決方式(間隙鎖及MVCC)
8. 樂觀鎖和悲觀鎖、行鎖與表鎖、共享鎖與排他鎖(inndob如何手動加共享鎖與排他鎖)
9. MVCC(增加兩個版本號)及delete、update、select時的具體控制
10. 死鎖判定原理和具體場景
11. 查詢緩慢和解決方式(explain、慢查詢日誌、show profile等)
12. drop、truncate、delete區別
13.查詢語句不同元素(where、jion、limit、group by、having等等)執行先後順序
14. mysql最佳化,讀寫分離、主從複製
15. 資料庫崩潰時事務的恢復機制(REDO日誌和UNDO日誌)
02 Redis
1. Redis如何做高可用、叢集
2.Redis和Memcached的優劣勢比較
3.Redis的資料儲存型別有哪些?
4.Redis的應用場景有哪些?
5. Redis的持久化方式,以及專案中用的哪種
6.Redis的快取雪崩怎麼解決?
7.Redis與資料庫MySQL的雙寫一致如何解決?
8.Redis的快取穿透怎麼解決?
03 計算機網路
1. OSI七層協議、TCP/IP四層協議
2. 各層對應的網路裝置(路由器、交換機、閘道器、網橋、集線器等等),各層對應的協議
3. 資料鏈路層的CSMA/CD協議,筆試可能會用到
4. IP地址分類,子網劃分(筆試常用)
5. TCP和UDP的區別
6. TCP三次握手和四次揮手,為什麼三次握手,為什麼四次揮手
7. TCP精髓問題:停止等待協議、連續ARQ協議、滑動視窗、流量控制、擁塞控制(慢開始、擁塞避免、快重傳、快恢復)
8. HTTP狀態碼
9. HTTP快取機制(cache-control、Expires之類的一系列請求與相應報頭欄位)
10. session和cookie的區別,禁用cookie後怎麼辦
11. DNS解析的過程
12. 常用協議的埠
04 資料結構與演算法
1. 陣列、連結串列(單向、雙向、雙端)、棧和佇列、二叉樹、紅黑樹、雜湊表、堆(最大和最小)
2. 個人經驗:棧和佇列、雜湊表、連結串列、二叉樹的題較多,圖的較少
3. 查詢:二分查詢及其變形
4. 二叉樹:前序、中序、後序遍歷,按規定方式列印,兩個節點之間操作(最近公共祖先、距離)等問題。
5. 最大堆和最小堆:大數量級資料找最大幾個等問題、堆如何調整等問題。
6. 棧和佇列:經常作為演算法題要用到的資料結構
7. 八大排序:3個簡單的:冒泡、選擇、插入及其最佳化,5個高階的:快速排序、歸併排序、堆排序、希爾排序、桶排序(快排、歸併、堆很重要)
8.手寫堆排序
9. 給阿里2萬多名員工按年齡排序應該選擇哪個演算法?
05 Linux
1. 常用命令:使用者控制、許可權控制、程式控制、系統狀態查詢之類的
2. /etc/hosts檔案什麼做用?
3 Linux目錄結構(尤其是/proc非常重要)
4. linux檔案系統結構和啟動流程)
5. Java服務端問題排查(OOM,CPU高,Load高,類衝突)
6. 如何檢視Java應用的執行緒資訊
7.Thread dump檔案如何分析(Runnable,鎖,程式碼棧,作業系統執行緒ID關聯)
06 作業系統
1. 一個二進位制檔案執行出結果,作業系統做了什麼(這是一個很全面的題)
2. 死鎖的條件及銀行家演算法、資源分配圖之類的
3. 程式間通訊方式
4. linux的五種IO方式(阻塞與非阻塞、同步與非同步的理解)
5. linux的select、poll、epoll的區別
6. 程式與執行緒區別、核心級執行緒與使用者級執行緒
7. 頁面置換演算法,尤其是lru
8. 程式排程演算法
9. linux中斷響應機制
10. 虛擬記憶體機制
08 Java程式設計
1. 談談對Synchronized關鍵字,類鎖,方法鎖,重入鎖的理解
2. volatile的原理
3. java執行緒的狀態及相互轉換
4. 執行緒同步的幾種方式和執行緒間通訊
5. ArrayList和LinkedList內部的實現大致是怎樣的?他們之間的區別和優缺點?
6. HashMap實現原理,如何保證HashMap的執行緒安全
7. ReentrantLock的內部實現?
8. JVM的垃圾回收機制,以及回收演算法有哪些?
9. JVM什麼時候會觸發YGC,什麼時候觸發FGC?
10.JVM如何記憶體調優、記憶體洩漏如何排查
11. Spring框架中IOC的原理是什麼?
12. 用Spring如何實現一個切面?
13. 死鎖的四個必要條件?
14.常見的設計模式、手寫一個單例、JDK、Spring原理裡有哪些採用了設計模式。
15.多執行緒與高併發的關係和區別
16.常見的高併發場景有哪些,對應的架構設計方案是什麼。
17.介紹完整的分散式中介軟體有哪些,各自的應用場景和作用。
18.雙11秒殺活動,你的技術架構設計思路。
。。。。。。。更多面試真題以及答案已整理如下。。。。。。。。。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70000181/viewspace-2774056/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 2年Java開發工作經驗面試總結Java面試
- 跳槽!3年Java面試經驗總結Java面試
- 阿里JAVA開發面試常問問題總結阿里Java面試
- 阿里歷年經典Java面試題彙總阿里Java面試題
- 超過1000多程式設計師面試經歷,收集了阿里巴巴面試3年總結的108道Java面試題:MySQL+redis+計算機網路+作業系統+Java程式設計+架構設計程式設計師阿里Java面試題MySqlRedis計算機網路作業系統架構
- 這兩天的面試經驗總結面試
- 面試官十年面試經驗總結面試
- 阿里JAVA面試分享經驗阿里Java面試
- 總結!Python培訓之10道經典的面試題Python面試題
- 100道Java高頻面試題(阿里面試官整理)Java面試題阿里
- 2年Java開發工作經驗,跳槽之後面試20餘家公司的總結Java面試
- 2萬字70道Java經典面試題總結(附答案)Java面試題
- 面試分享:專科半年經驗面試阿里前端P6+總結(附面試真題及答案)面試阿里前端
- 一年經驗Java開發0713面試Java面試
- 2019 阿里java面試總結 (含面試題解析)阿里Java面試題
- 2018年5-7月面試經歷總結:阿里面試題阿里面試題
- 我的Java開發學習之旅------>Java經典面試題Java面試題
- 最新阿里Java後端開發面試題100道(P6-P7)阿里Java後端面試題
- 100道JAVA面試題+JAVA面試題參考答案Java面試題
- java 面試總結(都是親身面試的經歷)Java面試
- 阿里面試經歷及總結(資料研發、Java研發方向)阿里面試Java
- 最新阿里Java面試題,這些面試題你會嗎?阿里Java面試題
- 經過兩個月面試,一名七年的後端開發寫下的面試總結面試後端
- 面試流程——谷歌資深面試官經驗總結面試谷歌
- 分享一位同學的阿里、百度前端面試經驗阿里前端面試
- 我的Android面試經驗總結Android面試
- 從阿里、騰訊的面試真題中總結了這11個Redis高頻面試題阿里Redis面試題
- 【搞定 Java 併發面試】面試最常問的 Java 併發基礎常見面試題總結!Java面試題
- 面試完總結的28道Nodejs面試題,希望對下一位筆試同學有所幫助!NodeJS面試題筆試
- 想要面試BATJ,先做完這160道Java面試題~BATJava面試題
- 一年半經驗,百度、有贊、阿里面試總結阿里面試
- 面試題總結-Java部分面試題Java
- 【Java問題面試總結】Java面試
- Java面試題總結2Java面試題
- Python常見面試題總結——個人Python學習經驗Python面試題
- 【Java 開發面試】Mysql 面試考點/考題彙總Java面試MySql
- 阿里一道Java併發面試題 (詳細分析篇)阿里Java面試題
- 阿里面試最最俱全的,50道Redis面試題阿里Redis面試題