阿里面試題
coreJava
- hashcode相等兩個類一定相等嗎?
- 介紹一下集合框架
- hashmap hashtable底層實現什么區別?hashtable和 concurrenthashtable呢?
- hashmap和 treemap1什么區別?低層數據結構是什么?
- 線程池用過嗎?都有什么參數?底層如何實現的?
- sychnized?和Lock什么區別??sychnize什么情況情況是對象鎖?什么時候是全局鎖?為什么??
- Threadlocal是什么?底層如何實現?寫一個例子唄?
- volitile的工作原理?
- Cas知道嗎?如何實現的?
- 請用至少四種寫法寫一個單例模式唄???
JVM
- 請介紹一下JWM內存模型?7用過什么垃圾回收器?都說說唄?
- 線上發送頻繁 full gc如何處理?CPU使用率過高怎么辦? 如何定位問題?如何解決?說一下解決思路和處理方法
- 知道字節碼嗎?字節碼都有哪些? Integer x=5,inty=5,比較x=-y都經過哪些步驟?
- 講講類加載機制唄?都有哪些類加載器,這些類加載器都加載哪些文件?手寫ー下類加載Demo
- 知道osgi嗎?他是如何實現的???
- 請問你做過哪些JWM優化?使用什么方法?達到什么效果??7
- class forname("java. Lang String ")和 String- class。 getc Lassloader(). Loadclass("java.Lang. String")什么區別啊??
Spring
- spring都有哪些機制啊?AOP底層如何實現的啊?工OC呢??
- cgLib知道嗎?他和jdk動態代理什么區別?手寫一個jdk動態代理唄?
數據庫
- 使用 mysql索引都有哪些原則??索引什么數據結構?B+tree和 B tree什么區別?
- mysq有哪些存儲引擎啊?都有啥區別??要詳細!!!
- 設計高並發系統數據庫層面該怎么設計???數據庫鎖有哪些類型?如何實現呀?
- 數據庫事務有哪些??
分庫分表
- 如何設計可以動態擴容縮容的分庫分表方案???
- 用過哪些分庫分表中間件,有啥優點和缺點,講一下你了解的分庫分表中間件的底層實現原理?
- 我現在有一個未分庫分表的系統,以后系統需分庫分表,如何設計讓未分庫分表的系統動態切換到分庫分表的系統上??
- 分布式事務知道嗎?你們怎么解決的?TCC?那若出現網絡原因,網絡連不通怎么辦啊??7
- 為什么要分庫分表啊???
- 分布式尋址方式都有哪些算法?知道一致性hash嗎? 手寫ー下java實現代碼??你若 userid取摸分片,那我要查一段連續時間里的數據怎么辦??
- 如何解決分庫分表主鍵問題?有什么實現方案??
分布式緩存
- redis和 memcheched什么區別?為什么單線程的 redish比多線程的 memched效率要高啊?
- redis有什么數據類型?都在哪些場景下使用啊?reids的主從復制是怎么實現的?
- redis的集群模式是如何實現的呢? redis的key是如何尋址的啊?
- 使用 redis如何設計分布式鎖?使用zk可以嗎?如何實現啊?這兩種哪個效率更高啊??
- 知道 redis的持久化嗎?都有什么缺點優點啊??具體底層實現呢?
- redis過期策略都有哪些LRU?寫ー下java版本的代碼吧?
分布式服務框架
- 說一下 dubbo的實現過程?注冊中心掛了可以繼續通信嗎??
- zk原理知道嗎?zk都可以干什么? Paxos算法知道嗎?說一下原理和實現?
- dubbo支持哪些序列化協議? hessian?說一下 hessian的數據結構?PB知道嗎?為啥PB效率是最高的啊?
- 知道 netty嗎 netty可以干嘛呀NIO,BI0,AI0都是什么啊?有什么區別啊?
- dubbo復制均衡策略和高可用策略都有哪些啊?動忞代理策略呢
- 為什么要進行系統拆分啊?拆分不用 dubbo可以嗎? dubbo和 thrift什么區區別別啊?⊙@鵝廠坊間八卦
分布式消息隊列
- 為什么使用消息隊列啊?消息隊列有什么優點和缺點啊?
- 如何保證消息隊列的高可用啊?如何保證消息不被重復消費啊
- kafka, activemq, rabbitmq, rocketman都有什么優點,缺點啊??
- 如果讓你寫一個消息隊列,該如何進行架構設計啊?說一下你的思路
分布式搜索引擎
- es的工作過程實現是如何的?如何實現分布式的啊
- es在數據量很大的情況下(數十億級別)如何提高查詢效率啊?
- es的查詢是一個怎么的工作過程?底層的 Lucence介紹一下唄?倒排索引知道嗎?es和 mongdb什么區別啊?都在什么場景下使用啊?
高並發高可用架構設計
- 如何設計一個高並發高可用系統?
- 如何限流?工程中怎么做的,說一下具體實現?
- 緩存如何使用的?緩存使用不當會造成什么后果?
- 如何熔斷啊?熔斷框架都有哪些?具體實現原理知道嗎?
- 如何降級?如何進行系統拆分,如何數據庫拆分???
通信協議
- 說一下TCP/IP四層?
- http的工作流程???http1.0http1.1http2.0具體哪些區別啊?
- TCP三次握手,四層分手的工作流程?畫一下流程圖?為什么不是四次五次或者二次啊?
- 畫一下 https的工作流程?具體如何實現啊?如何防止被抓包啊
算法
- 比較簡單,我一個文件,有45億個阿拉伯數字,如何進行去重啊?如何找出最大的那個數啊?
數據結構
- 二叉樹和紅黑樹等,