JVM与性能优化高级面试32题(收藏版):性能调优+垃圾回收+内
JVM 是小白 Java 程序员成长路上的一道坎,学习JVM之前,只需要知道代码编译成 Class,虚拟机加载 Class 运行就可以了,学习 JVM 之后,可以深入理解代码从编译到加载的过程、内存中对象的创建与垃圾回收、日常开发中快速定位性能问题等,当然也是面试不可缺少的加分项,面对阿里等一线大企业的面试中也是必问之一!
JVM内存区域常见问题
- Java 内存分配?
- Java 堆的结构是什么样子的?
- 什么是堆中的永久代(Perm Gen space)?
- 简述各个版本内存区域的变化?
- 说说各个区域的作用?
- Java 中会存在内存泄漏吗,简述一下?
JVM的执行子系统常见问题
- Java 类加载过程?
- 描述一下 JVM 加载 Class 文件的原理机制?
- 什么是类加载器?
- 类加载器有哪些?
- 什么是tomcat类加载机制?
- 类加载器双亲委派模型机制?
垃圾回收常见问题
- 什么是GC? 为什么要有 GC?
- 简述一下Java 垃圾回收机制?
- 如何判断一个对象是否存活?
- 垃圾回收的优点和原理,并考虑 2 种回收机制?
- 垃圾回收器的基本原理是什么?
- 垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?
- 深拷贝和浅拷贝?
- System.gc() 和 Runtime.gc() 会做些什么?
- 如果对象的引用被置为 null,垃圾收集器是否会立即释放对象占用的内存?
- 什么是分布式垃圾回收(DGC)?它是如何工作的?
- 串行(serial)收集器和吞吐量(throughput)收集器的区别是什么?
- 在 Java 中,对象什么时候可以被垃圾回收?
- 简述Minor GC 和 Major GC?
- JVM 的永久代中会发生垃圾回收么?
- Java 中垃圾收集的方法有哪些?
性能优化常见问题
- 讲讲你理解的性能评价及测试指标?
- 常用的性能优化方式有哪些?
- 说说分布式缓存和一致性哈希?
- 同步与异步?阻塞与非阻塞?
- 什么是GC调优?
- 常见异步的手段有哪些?
如何正确系统的学习JVM和性能调优?
所谓系统学习法,是指把所学内容当成是一个系统看待,力求从大方向出发指导学习,这样,在学习和复习的时候不是按部就班按章节行进,而是先模糊概括,再逐渐在大框架下逐步明晰细节、完善结构、针对缺陷和不足专攻的学习方法。区分一个程序猿技术水平和视野的一个重要指标是性能优化,所以面试时,面试官总会问你一个问题,如何进行性能优化呢?
知识笔记导图Java内存区域
- 运行时数据区域(程序计数器、堆、栈等)
- 站在线程角度来看堆和栈
- 深入辨析堆和栈
- 方法的出入栈
- 虚拟机中的对象
- 堆参数设置和内存溢出实战
垃圾回收器和内存分配策略
- 判断对象的存活
- 辨析强、弱等各种引用
- GC算法
- 分代收集
- Stop The World现象
- GC日志解读
- 内存分配与回收策略,内存泄漏和内存溢出辨析
- JDK为我们提供的工具
- 了解MAT
- 垃圾回收器
深入了解性能优化
- 常用的性能评价/测试指标
- 常用的性能优化手段
- 详细了解应用服务性能优化
编写高效优雅Java程序
JVM的执行子系统
- Class类文件本质,Class文件格式
- 字节码指令
- 类加载机制
- 栈桢详解
- 方法调用详解
- 基于栈的字节码解释执行引擎
如果看到这时你的头脑还是一片空白,或是靠死记硬背还是靠着之前的经历,答一下压缩代码,打包代码,事件代理,这说明你对性能优化还是缺乏一个整体,系统的掌握,对性能优化还只是处于听说过一个方法就加上去的阶段。这样也就无从去更好的优化性能。在这分享一个系统学习JVM及性能调优的学习导图并且在文末附Xmind文件笔记免费分享!(建议收藏)
读者福利(学习资料分享)
而针对以上面试技术点,我在这里也做一些技术知识面试专题资料免费分享,希望能更好的帮助到大家。
领取方式:
面试答案截图 BAT大厂面试题 更多面试专题点点喜欢,加入合作Java架构交流Qqun:935692859,管理员处免费领取资料。
对于很多初级Java工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。
整理的这些架构技术希望对Java开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。同时我经过多年的收藏目前也算收集到了一套完整的学习资料,希望对想成为架构师的朋友有一定的参考和帮助。
下面是部分资料截图,诚意满满:特别适合有2-5年开发经验的Java程序员们学习。
领取方式:
点点喜欢,加入合作Java架构交流Qqun:935692859,管理员处免费领取资料。
(部分资料如下)
部分视频资料