面試題
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