最新阿里Java後端開發面試題100道(P6-P7)

Java小叮噹發表於2020-11-08

 

 

面試題

1、什麼是位元組碼?採用位元組碼的好處是什麼?
2、 Oracle JDK 和 OpenJDK 的對比?
3、Arrays.sort 和 Collections.sort 實現原理和區別
4、wait 和 sleep 的區別是什麼?
5、陣列在記憶體中如何分配?
6、HashMap 1.7 與 1.8 的 區別,說明 1.8 做了哪些優化,如何優化的?
7、HashMap 的擴容過程
8、HashMap 是執行緒安全的嗎,為什麼不是執行緒安全的(最好畫圖說明多執行緒環境下不安全)?
9、HashSet 是如何保證不重複的?
10、記憶體模型以及分割槽,需要詳細到每個區放什麼?
11、堆裡面的分割槽:Eden,survival (from+ to),老年代,各自的特點是?
12、GC 的兩種判定方法是什麼?
13、SafePoint 是什麼?
14、GC 的三種收集方法:標記清除、標記整理、複製演算法的原理與特點,分別用在什麼地方,如果讓你優化收集方法,有什麼思路?
15、GC 收集器有哪些?CMS 收集器與 G1 收集器的特點。
16、Minor GC 與 Full GC 分別在什麼時候發生?
17、JVM 記憶體分哪幾個區,每個區的作用是什麼?
18、如和判斷一個物件是否存活?(或者 GC 物件的判定方法)
19、簡述 java 垃圾回收機制?
20、Java 中垃圾收集的方法有哪些?
21、Java 類載入過程?
22、簡述Java 類載入機制?
23、類載入器雙親委派模型機制?
24、什麼是類載入器,類載入器有哪些?
25、簡述 java 記憶體分配與回收策率以及 Minor GC 和Major GC。
26、activemq 如果資料提交不成功怎麼辦(訊息丟失)
27、activeMQ 傳送訊息的方式有哪些?
28、activeMQ 如何調優?
29、什麼是死信佇列?
30、Basic.Reject 的用法是什麼?
31、為什麼不應該對所有的 message 都使用持久化機制?
32、為什麼 heavy RPC 的使用場景下不建議採用 disk node ?
33、什麼情況下 producer 不主動建立 queue 是安全的?
34、“dead letter”queue 的用途?
35、在 Join 表的時候使用相當型別的例,並將其索引
36、與 Oracle 相比,Mysql 有什麼優勢?
37、區分 CHAR_LENGTH 和 LENGTH?
38、在 Mysql 中 ENUM 的用法是什麼?
39、CHAR 和 VARCHAR 的區別?
40、列的字串型別可以是什麼?
41、如何獲取當前的 Mysql 版本?
42、Mysql 中使用什麼儲存引擎?
43、TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 資料型別上做什麼?
44、主鍵和候選鍵有什麼區別?
45、如何使用 Unix shell 登入 Mysql?
46、 myisamchk 是用來做什麼的?
47、MYSQL 資料庫伺服器效能分析的方法命令有哪些?
48、如何控制 HEAP 表的最大尺寸?
49、MyISAM Static 和 MyISAM Dynamic 有什麼區別?
50、federated 表是什麼?
51、如果一個表有一列定義為 TIMESTAMP,將發生什麼?
52、列設定為 AUTO INCREMENT 時,如果在表中達到最大值,會發生什麼情況?
53、怎樣才能找出最後一次插入時分配了哪個自動增量?
54、你怎麼看到為表格定義的所有索引?
55、LIKE 宣告中的%和_是什麼意思?
56、如何在 Unix 和 Mysql 時間戳之間進行轉換?
57、我們如何得到受查詢影響的行數?
58、Mysql 查詢是否區分大小寫?
59、LIKE 和 REGEXP 操作有什麼區別?
60、BLOB 和 TEXT 有什麼區別?
61、mysql_fetch_array 和 mysql_fetch_object 的區別是什麼?
62、我們如何在 mysql 中執行批處理模式?
63、MyISAM 表格將在哪裡儲存,並且還提供其儲存格式?
64、Mysql 中有哪些不同的表格?
65、ISAM 是什麼?
66、InnoDB 是什麼?
67、Mysql 如何優化 DISTINCT?
68、如何輸入字元為十六進位制數字?
69、如何顯示前 50 行?
70、BIO、NIO 和 AIO 的區別?
71、Netty 的特點?
72、Netty 的執行緒模型?
73、TCP 粘包/拆包的原因及解決方法?
74、如何選擇序列化協議?
75、NIOEventLoopGroup 原始碼?
76、RabbitMQ 中的 broker 是指什麼?cluster 又是指什麼?
77、RAM node 和 disk node 的區別?
78、vhost 是什麼?起什麼作用?
79、客戶端連線到 cluster 中的任意 node 上是否都能正常工作?
80、為什麼 heavy RPC 的使用場景下不建議採用 disk node ?
81、RabbitMQ 允許傳送的 message 最大可達多大?
82、如何防止出現 blackholed 問題?
83、Basic.Reject 的用法是什麼?
84、為什麼不應該對所有的 message 都使用持久化機制?
85、RabbitMQ 中的 cluster、mirrored queue,以及 warrens 機制分別用於解決什麼問題?存在哪些問題?
86、NoSQL 資料庫有哪些型別?
87、MySQL 與 MongoDB 之間最基本的差別是什麼?
88、你怎麼比較 MongoDB、CouchDB 及 CouchBase?
89、MongoDB 成為最好 NoSQL 資料庫的原因是什麼?
90、journal 回放在條目(entry)不完整時(比如恰巧有一箇中途故障了)會遇到問題嗎?
91、分析器在 MongoDB 中的作用是什麼?
92、名字空間(namespace)是什麼?
93、如果使用者移除物件的屬性,該屬性是否從儲存層中刪除?
94、能否使用日誌特徵進行安全備份?
95、允許空值 null 嗎?
96、如何執行事務/加鎖?
97、啟用備份故障恢復需要多久?
98、什麼是 master 或 primary?
99、我必須呼叫 getLastError 來確保寫操作生效了麼?
100、如何理解 MongoDB 中的 GridFS 機制,MongoDB 為何使用 GridFS 來儲存檔案?

 

 

 

 

 

總結答案

最新2020整理收集的一些面試題(都整理成文件),有很多幹貨,包含netty,spring,執行緒,spring cloud等詳細講解,也有詳細的學習規劃圖,面試題整理等,我感覺在面試這塊講的非常清楚:獲取面試資料只需點選:https://shimo.im/docs/qjXW83y6cVvQyRQX

相關文章