大資料量資料庫
1.mybatis如何實現pojo類字段和資料庫欄位的對映。
2.mybatis如何傳入多個引數。
1.springboot啟動做了哪些事情。
2.dubbo和springcloud的核心原理。
3.springaop的原理。
1.jvm有哪些優化點。
2.gc**演算法。
3.強引用和弱引用虛引用的區別和應用(快取)。
1.容器(list、map、set等),list擴容
2.hashmap原理和concurrenthashmap原理。
3.lock鎖和aqs原理。偏向鎖->輕量級鎖->自旋鎖->重量級鎖(自旋鎖) 使用物件頭中的markword來標識別。
4.執行緒池引數,還有內部流程。
5.servlet生命週期。
6.幾種事務等級,和spring的事物傳播特性。
7.介面和抽象類的區別
1.explain優化和索引。
2.mysql的存貯結構,和架構。
3.sql的執行順序和一些常用函式。
單例模式、工廠模式、抽象工廠模式、監聽者模式、策略模式、facade模式等。
分布式鎖:
1.redis的set方法(key,requestid,setifnot,timeunit,time,...),lua表示式eval實現分布式鎖。
2.redission,實現jdk的lock介面,可以實現分布式鎖。
分布式協議:
1.穩定hash演算法。
2.paxos演算法。
3.raft演算法。
4.gossip協議。
5.cap理論和常用的分布式框架。
分布式系統構建:
1.利用zookeeper臨時節點擊舉和做配置中心。
2.hbase的列式儲存。
1.七層結構各自的內容。
2.http協議內容。
3.socket協議原理,tcp和udp區別,nio等的應用。
4.netty的原理和tomcat的區別。
執行緒池隔離、熔斷等容錯技術有不懈的追求,我們對執行緒模型的優化,全非同步呼叫。等等
1.執行緒池隔離,使用多個執行緒池處理不同的業務,避免互相影響。
2.執行緒模型優化:就是給個任務,然後根據業務拆分,哪些業務需要多執行緒哪些需要單執行緒?執行緒池是否需要隔離?然後需要幾個執行緒池?然後有幾種組合方式,各有什麼優缺點。這個調優的過程就是執行緒模型優化。
3.全非同步呼叫
Java面試總結
需要分開處理一些wait notify,reentrantlock裡面的condition應用,能夠控制notify哪個執行緒,鎖可以繫結多個條件。具有公平鎖功能,每個到來的執行緒都將排隊等候。經常與其他表進行連線的表,在連線欄位上應該建立索引 經常出現在where子句中的字段 經常出現用作查詢選擇...
java面試總結1
一.假設有乙個池塘,裡面有無窮多的水.現有2個空水壺,容積分別為5公升和6公升.問題是如何只用這2個水壺從池塘裡取得3公升的水?6公升的叫做a,5公升的叫做b 1 裝a滿,把a倒入b滿,a的剩下1公升 2 b倒空,把a的1公升倒入b,這時候a和b分別為0和1 3 再裝a滿,倒入b讓它滿,由於b的可裝...
java後端面試 vipkid面試總結
一面 1 說說專案架構的過程 2 如果xml充當資料庫,dao層的實現 3 依賴注入的實現方式 4 寫乙個排序演算法 5 知道哪些設計模式,工廠模式有什麼用 6 談談怎麼保證併發安全,談到了不可變物件,同步容器,併發容器,堆疊封閉 7 談談物件建立的過程,變數物件是如何儲存的 8 談談微服務 9 談...