轉面試題

轉https://www.cnblogs.com/wyq178/p/10612060.html?tdsourcetag=s_pcqq_aiomsg html

 

 

1:手寫一個單例模式(雙重檢查鎖機制)

2:volatile是如何實現變量可見的?用到了哪些指令?工做內存和主內存解決了什麼問題?以及他們之間的交互過程

3:jvm如何調優?寫幾個參數出來?嘗試設計一個本身的JVM,你會如何設計?

4:dubbo的group怎麼用?超時時間設置的做用域有哪些?優先級是什麼?

5:ThreadLocal底層如何實現?map中的key是什麼?vlaue是什麼?須要解決什麼問題?哪一個方法能夠防止內存泄露

6:講一下currentHashMap的get方法過程,如何鏈表轉紅黑樹?

7:有一個表t1,列爲ABC,索引爲AC,如今select xx from table where c=xx a =xx有沒有用到索引?

8:cas是什麼?給你筆畫一下具體的實現過程?cas何時結束?

9:java的鎖存儲在哪?佔幾個比特位?鎖是如何升級的?

10:redis的緩存淘汰策略有哪些?LRU和LFU區別,手寫一個LRU

11:寫出線程池的核心參數,並解釋,而後說明線程池是有哪些放棄策略?

12:http屬於什麼層協議?與https的區別是什麼?Tcp協議屬於那一層?OSI七層網絡模型有哪些?三次握手和四次揮手的過程?爲何握手要三次,揮手要四次?

13:線上cpu佔用率高怎麼辦?如何排查這個問題,用哪些命令

14:spring使用了哪些設計模式?BeanFactory和Factory的區別是什麼?

15:策略模式的使用場景?說一下它的優勢和缺點?

16:給你一個秒殺場景,如何應對短期的高峯請求問題?數據庫如何防止併發問題?秒殺如何實現不一樣的客戶端的時間一致性?

17:redis的基本數據類型有哪些?hash的使用場景?如何經過redis實現一個阻塞隊列?

18:畫出dubbo的調用關係圖?並舉例說明調用鏈

19:cas是什麼?解釋一下cas的原理。並用筆畫出來,aba問題怎麼解決?

20:大家的線程池是如何配比的?默認的線程數是多少?寫出線程池的幾個參數,並結合大家的項目解釋一下是如何調優的?

21:sring的事務用過嗎?簡述一下如何使用?當方法A使用了事務,方法B也使用了事務,他們的事務策略都是:若是沒有新的事務就開啓一個事務,問調用過程當中事務是如何傳播的?

22:給你一串連續的數字,1到10000,隨機除去兩個數,怎樣快速找到這兩個數?

23:tomcat的IO框架經歷了怎樣的變化?談談你對NIO流的理解?

24:redis的緩存策略有哪些?手動寫一下LRU的實現方法,並介紹一下LFU

25:redis的集羣是如何找到具體的key的?大家的集羣採用哪一種持久化策略?爲何?集羣搭建模式是什麼?

26:一串有負數和正數的數字,用算法實現連續的數字加起來的和最大的一串數字?

27:hashmap爲何是線程不安全的?線程安全的有哪些集合?講一下集合框架,包括map和list

28:秒殺場景下如何實現分佈式鎖?redis搭建的集羣會存在併發問題嗎?怎麼解決?

29:目前jdk用的垃圾回收器是什麼?講一講垃圾回收的內存劃分?引用鏈可達是從哪裏開始回收的?擴展:職責鏈模式

30:java有哪些加載器?Java的類加載機制是什麼?雙親委派機制是什麼?有什麼好處?我若是想自定義一個名爲Object的類,如何加載它?

31:你知道哪些設計模式?在項目中用到了哪些設計模式?講一講具體的應用場景和實現方式

32:redis集羣是把數據存儲在全部節點嗎?若是是存儲一個節點?它怎麼知道存儲到哪一個節點?當master節點掛了,緩存是否是就刪除了?增長一個節點或者刪除一個節點,集羣會怎麼處理?

33:方法前若是不聲明private、public,那麼是什麼?它的級別是什麼?

34:有沒有線上調優JVM的經驗?如何打印gc細節?

35:把你知道的GC算法都說一下,虛擬機經歷了怎樣的變化才發展到今天?

36:你作了什麼項目?有哪些功能?有什麼優點?解決了什麼問題?你認爲還有那些優化的點?

37:什麼是可重入鎖?假如我一個線程申請了可重入鎖,那麼子線程能夠再次用到可重入鎖嗎?

3八、jvm的內存結構是什麼樣的?請畫出來而且是哪些是線程共享的?哪些是線程私有的?

3九、雙向升序鏈表的插入和刪除(筆試)

40、二維數組的遍歷和賦值(筆試)

4二、算法:一個公司找獵頭拿簡歷 1000份,每一個獵頭須要的佣金同樣,但每一個獵頭擁有的簡歷數不相同(可能重複) ,問公司如何能僱傭最少的獵頭找到更多的簡歷

4二、 接口限流策略有哪些

4三、微服務雪崩後怎麼處理的?

4四、多線程環境,線程如何同步?

4五、用多線程統計1到1000000之間有多少個素數,並輸出素數(假設cpu有四核)(機試)

4六、用java實現各訂單生成器,須要考慮可讀、併發、不可重複(機試)

4七、歸併排序(機試)

4八、rabbitmq消息重複和丟失如何處理?

4九、一個部分有序的數組,如何找到一個指定的數字?要求時間複雜度不能超過log(n)

50: hystrix如何實現服務降級、治理、熔斷,講一講微服務中服務熔斷的過程?大家都是怎麼處理的?

 51:mysql的limit查詢如何進行優化?索引遵循什麼原則?

52:ElasticSearch瞭解嗎?ElasticsSearch如何計算評分?評分公式寫出來,有哪些查詢命令?

53:微服務的事務大家用什麼解決?事務的傳播機制,方法A調用方法B,方法A有事務,問調用方法B還會有事務嗎?
相關文章
相關標籤/搜索