
今天筆者爲你們分享「阿里資深Java面試題」,分別是數據庫、分庫分表、分佈式緩存、分佈式服務框架、分佈式消息隊列、分佈式搜索引擎、高併發高可用架構設計、JVM、Spring、算法、數據結構等阿里資深java面試題,下面就隨小編一塊兒看看。java
一. 數據庫
- 使用mysq1索引都有哪些原則?索引什麼數據結構?B+tree和Btree什麼區別?
- mysq有哪些存儲引擎啊?都有啥區別??要詳細!!
- 設計高併發系統數據庫層面該怎麼設計???數據庫鎖有哪些類型?如何實現呀?
- 數據庫事務有哪些?
二. 分庫分表
- 如何設計能夠動態擴容縮容的分庫分表方案?
- 用過哪些分庫分表中間件,有啥優勢和缺點,
- 講一下你瞭解的分庫分表中間件的底層實現原理?
- 我如今有一個未分庫分表的系統,之後系統需分庫分表,如何設計,
- 讓未分庫分表的系統動態切換到分庫分表的系統上?
- 分佈式事務知道嗎?大家怎麼解決的?TCC?那若出現網絡緣由,網絡連不通怎麼辦啊
- 爲何要分庫分表啊?
- 分佈式尋址方式都有哪些算法?知道一致性hash嗎?
- 手寫一下java實現代碼?你若userId取摸分片,那我要查段連續時間裏的數據怎麼辦?
- 如何解決分庫分表主鍵問題?有什麼實現方案?
三. 分佈式緩存
- redis和memcheched什麼區別?爲何單線程的redis比多線程的memched效率要高啊?
- redis有什麼數據類型?都在哪些場景下使用啊?
- reids的主從複製是怎麼實現的?redis的集羣模式是如何實現的呢?redis的key是如何尋址的啊?
- 使用redis如何設計分佈式鎖?使用zk能夠嗎?如何實現啊?這兩種哪一個效率更高啊?
- 知道redis的持久化嗎?都有什麼缺點優勢啊??具體底層實現呢?
- redis過時策略都有哪些?LRU?寫--下java版本的代碼吧?
- 說一下dubbo的實現過程?註冊中心掛了能夠繼續通訊嗎?
四. 分佈式服務框架
- zk原理知道嗎?zk均可以幹什麼?Paxos算法知道嗎?說一下原理和實現??
- dubbo支持哪些序列化協議?hessian?說一Fhessian的數據結構?PB知道嗎?爲啥PB效率是最高的啊??
- 知道netty嗎?netty能夠幹嗎呀NIO,BIO,AIO都是什麼啊?有什麼區別啊?
- dubbo複製均衡策略和高可用策略都有哪些啊?動態代理策略呢?
五. 分佈式消息隊列
- 爲何要進行系統拆分啊?拆分不用dubbo能夠嗎?dubbo和thrift什麼區別啊?
- 爲何使用消息隊列啊?消息隊列有什麼優勢和缺點啊?
- 如何保證消息隊列的高可用啊?如何保證消息不被重複消費啊?
- kafka,activemq,rabbitmq,rocketmq都有什麼優勢,缺點啊?
- 若是讓你寫一個消息隊列,該如何進行架構設計啊?說-下你的思路
六. 分佈式搜索引擎
- es的工做過程實現是如何的?如何實現分佈式的啊
- es在數據量很大的狀況下(數十億級別)如何提升查詢效率啊?
- es的查詢是個怎麼的工做過程?底層的lucence介紹一下唄?倒排索引知道嗎?
- es和mongdb什麼區別啊?都在什麼場景下使用啊?
七. 高併發高可用架構設計
- 如何設計一個高併發高可用系統?
- 如何限流?工程中怎麼作的,說一下具體實現?
- 緩存如何使用的?緩存使用不當會形成什麼後果?
- 如何熔斷啊?熔斷框架都有哪些?具體實現原理知道嗎?
- 如何降級?如何進行系統拆分,如何數據庫拆分?
八. JVM
- 請介紹一下JVM內存模型??用過什麼垃圾回收器?都說說唄?
- 線上發送頻繁ful1gc如何處理??CPU使用率太高怎麼辦?
- 如何定位問題?如何解決?說下解決思路和處理方法.
- 知道字節碼嗎?字節碼都有哪些?
- IntegerX5,inty=5,比較x=y都通過哪些步驟?
- 講講類加載機制唄?都有哪些類加載器,這些類加載器都加載哪些文件?
- 手寫一下類加載Demo
- 知道osgi嗎?他是如何實現的?
- 請問你作過哪些JVM優化?使用什麼方法?達到什麼效果?
- class.forName("java.langString")和String.class.getClassLoader().LoadClass("java.lang.String")什麼區別啊?
九. Spring
- spring都有哪些機制啊?AOP底層如何實現的啊?I0C呢??
- cglib知道嗎?他和jdk動態代理什麼區別?手寫個jdk動態代理唄?
- 說一下TCP/IP四層?
- http的工做流程???http1.0http1.1http2.0具體哪些區別啊?
- TCP三次握手,四層分手的工做流程?畫一下流程圖?爲何不是四次五次或者二次啊?
- 畫一下https的工做流程?具體如何實現啊?如何防止被抓包啊?
十. 算法
- 比較簡單,我一個文件,有45億個阿拉伯數字,如何進行去重啊?如何找出最大的那個數啊?
十一.數據結構
寫在最後
歡迎你們轉發評論,有不一樣看法歡迎下方留言。點贊是對做者最大的支持,感謝!面試