面试题
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 来存储文件?