大厂面试官为什么老是喜欢问JVM?如何回答
前言
最近有粉丝在后台跟我抱怨,自己去大厂面试,面试官老是喜欢问JVM!
你问JVM干啥?程序员平时又用不到这些东西!多问问框架、数据库、项目经验不行么?
有些人觉得是面试官zb,就爱问这种虚而不实的东西,显得自己牛逼,公司牛逼!
其实这种想法非常幼稚!我不排除部分面试官有这种想法,喜欢面试虐人。但是大厂有大厂的考虑,问JVM主要是看你在技术方向的潜力,你看对待技术有没有深挖的态度。
大概在2011年左右,支付宝出现了多次内存泄漏的问题,且问题相当严重,当时毕玄大师亲自带队解决问题。到了2013年左右,阿里高速发展,很多架构完全基于OSGI, JVM的问题越来越突出,如果不懂JVM的底层机制根本无从动手,所以从那时起,JVM就成为了阿里的技术要求。
还有一个更重要的原因,就是现在Java开发岗,竞争太TM激烈了!
前段时间,我们总监招一个Java后端,两天收到200多份简历!这么多的简历根本筛不出来!
大厂的岗位一般只招一两个人,符合条件的有10个人,技术能力都差不多,这个时候你说会选谁?
JVM面试会怎么问?
如果我是面试官,我就会问谁会JVM性能调优?谁会,谁技术能力更好就要谁!BAT就是如此,很多小公司也喜欢跟风,所以面试不问点JVM调优都不好意思跟别人打招呼。所以,JVM很重要,能够具备JVM调优的技能更加重要。
看看这几道阿里面试真题,你能不能答上来?
1、JVM内存区域有哪些?为什么这么划分?
2、GC Roots有哪些?说得越全面越好。
3、一个亿级流量系统,让它几乎不发生Full GC。你来进行JVM调优,怎么做?
4、线上系统突然CPU100%,你怎么排查?
4、JVM内存泄漏与内存溢出的区别,怎么排查内存泄漏?
这些问题,由浅入深,必须要对JVM有一个体系化的认识及学习,才能答得上来,而且大厂面试基本上所有的问题都是结合实际场景来问,不仅要求你会使用这些技术,还要知道为什么要用这个技术,以及如何做到高可用等等。要想掌握JVM,对程序员的技术广度和深度有很高的要求。
JVM核心内容
- 线程
- JVM 内存区域
- JVM 运行时内存
- 垃圾回收与算法
- JAVA 四种引用类型
- GC 分代收集算法 VS 分区收集算法
- GC 垃圾收集器
- JVM 类加载机制
最新JVM面试真题
- Java 类加载过程?
- 描述一下 JVM 加载 Class 文件的原理机制?
- Java 内存分配
- GC 是什么? 为什么要有 GC?
- 简述 Java 垃圾回收机制
- 如何判断一个对象是否存活?(或者 GC 对象的判定方法)
- ...
- 垃圾回收的优点和原理。并考虑 2 种回收机制
- 垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗? 有什么办法主动通知虚拟机进行垃圾回收?
- Java 中会存在内存泄漏吗,请简单描述
- 深拷贝和浅拷贝
- ...
多多支持,即可免费获取资料——点赞+关注,加助理VX:mxx2020666,免费领取
本文地址:https://blog.csdn.net/m0_46995061/article/details/109615280
上一篇: Java面试题全集