每一個人都擁有大廠夢,我也不例外,在小公司待久了,感受人會荒廢掉,過輕鬆,沒有壓迫感。在衆多大廠中,最終選擇了阿里。「年輕、活力、富有激情」是我聽到得最多對它的形容詞,因此毅然決然,但願本身可以在這個舞臺上展現出本身。java
如下分享此次面試阿里中間件和螞蟻的面試題,另外還對本身的面試作了一些總結,總結裏含有一些學習方法和資料,須要的朋友能夠直接在文末免費領取!mysql
開始~~阿里中間件(四面)
Java中間件一面
技術一面考察範圍:git
- 重點問了Java線程鎖:synchronized 和ReentrantLock相關的底層實現
- 線程池的底層實現以及常見的參數
- 數據結構基本都問了一遍,鏈表、隊列等
- Java內存模型:常問的JVM分代模型,以及JDK1.8後的區別,最後還問了JVM相關的調優參數
- 分佈式鎖的實現比較
技術一面題目:github
- 自我介紹
- 擅長哪方面的技術?
- java有哪些鎖中類?(樂觀鎖&悲觀鎖、可重入鎖&Synchronize等)
- 比較重要的數據結構,如鏈表,隊列,棧的基本原理及大體實現
- J.U.C下的常見類的使用。Threadpool的深刻考察;blockingQueue的使用
- Java內存分代模型,GC算法,JVM常見的啓動參數;CMS算法的過程
- Volatile關鍵字有什麼用(包括底層原理)?
- 線程池的調優策略
- Spring cloud的服務註冊與發現是怎麼設計的?
- 分佈式系統的全局id如何實現
- 分佈式鎖的方案,redis和zookeeper那個好,若是是集羣部署,高併發狀況下那個性能更好?
Java中間件二面
技術二面考察範圍:面試
- 問了項目相關的技術實現細節
- 數據庫相關:索引、索引底層實現、mysql相關的行鎖、表鎖等
- redis相關:架構設計、數據一致性問題
- 容器:容器的設計原理等
技術二面題目:redis
- 參與的項目,選一個,技術難度在哪裏?
- Collections.sort底層排序方式
- 負載均衡的原理
- 設計模式與重構,談談你對重構的理解
- 談談redis相關的集羣有哪些成熟方案?
- 再談談一致hash算法(redis)
- 數據庫索引,B+樹的特性和建樹過程
- Mysql相關的行鎖,表鎖、樂觀鎖、悲觀鎖
- 談談多線程和併發工具的使用
- 談談redis的架構和組件
- Redis的數據一致性問題(分佈式多節點環境&單機環境)
- Docker容器
Java中間件三面
技術三面考察範圍:算法
- 主要談到了高併發的實現方案
- 以及中間件:redis、rocketmq、kafka等的架構設計思路
- 最後問了平時怎麼提高技術的
技術三面題目:sql
- 高併發狀況下,系統是如何支撐大量的請求的?
- 接着上面的問題,延伸到了中間件,kafka、redis、rocketmq、mycat等設計思路和適用場景等
- 最近上過哪些技術網站?最近再看哪些書?
- 工做和生活中碰見最大的挑戰,怎麼去克服?
- 將來有怎樣的打算
Java中間件四面
最後,你懂的,主要就是HR走流程了,主要問了將來的職業規劃。docker
螞蟻中間件團隊面試題
螞蟻中間件一面數據庫
- 自我介紹
- JVM垃圾回收算法和垃圾回收器有哪些,最新的JDK採用什麼算法?
- 新生代和老年代的回收機制
- 講一下ArrayList和linkedlist的區別,ArrayList與HashMap的擴容方式
- Concurrenthashmap1.8後的改動
- Java中的多線程,以及線程池的增加策略和拒絕策略瞭解麼?
- Tomcat的類加載器瞭解麼?
- Spring的ioc和aop,Springmvc的基本架構,請求流程
- HTTP協議與Tcp有什麼區別,http1.0和2.0的區別?
- Java的網絡編程,講講NIO的實現方式,與BIO的區別,以及介紹經常使用的NIO框架
- 索引何時會失效變成全表掃描?
- 介紹下分佈式的paxos和raft算法
螞蟻中間件二面
- 你在項目中怎麼用到併發的?
- 消息隊列的使用場景,談談Kafka
- 你說了解分佈式服務,那麼你怎麼理解分佈式服務?
- Dubbo和Spring Clound的區別,以及使用場景
- 講一下docker的實現原理,以及與JVM的區別
- MongoDB、Redis和Memcached的應用場景,各自優點
- MongoDB有事務嗎?
- Redis說一下sorted set底層原理
- 講講Netty爲何併發高,相關的核心組件有哪些?
螞蟻中間件三面
- 完整的畫一個分佈式集羣部署圖,從負載均衡到後端數據庫集羣
- 分佈式鎖的方案,Redis和Zookeeper哪一個好,若是是集羣部署,高併發狀況下哪一個性能更好?
- 分佈式系統的全局id如何實現?
- 數據庫萬級變成億級,你如何來解決?
- 常見的服務器雪崩是由什麼引發的,如何來防範?
- 異地容災怎麼實現?
- 經常使用的高併發技術解決方案有哪些,以及對應的解決步驟?
面試造火箭,工做擰螺絲,你也要先能造火箭以後才能選擇要不要擰螺絲
想不想獲取葵花寶典?
本號粉絲限時獲取
一線互聯網大廠面試題,近500頁,內容涵蓋市面所需大多數面試常問的經典技術
無套路,純分享資料
須要這份資料的,添加小助手:msbxq2020免費獲取,備註博客園
公衆號:Java架構師聯盟
git地址:https://github.com/biws-byte/mxq