JVM调优面试题及答案.docxVIP

  • 4
  • 0
  • 约6.72千字
  • 约 7页
  • 2026-03-12 发布于河北
  • 举报

JVM调优面试题及答案

一、基础核心题

1.什么是JVM调优?你在项目中为什么要做JVM调优?

答案:JVM调优本质上就是调整JVM的内存分配、垃圾回收等参数,让Java程序在运行时更高效,避免OOM、频繁GC、响应变慢等问题。

项目中做调优,主要是遇到了实际问题:比如线上服务频繁卡顿,排查后发现是FullGC执行太频繁,每次GC都会暂停业务线程;或者程序运行一段时间后直接OOM崩溃,日志里报HeapOverflowError;还有就是高并发场景下,年轻代GC耗时太长,影响接口响应速度。这些问题不解决会导致服务可用性下降、用户体验变差,所以必须通过调优来优化。

2.JVM内存模型(运行时数据区)有哪些部分?各自的作用是什么?

答案:主要分为5个区域,各自作用很明确,记清楚边界就行:

1.程序计数器:线程私有,记录当前线程执行的字节码指令地址,比如分支、循环、跳转都靠它定位,不会OOM;

2.虚拟机栈:线程私有,每个方法执行时会创建一个栈帧,存局部变量表、操作数栈、方法出口等,栈深度不够会报StackOverflowError,内存不够会OOM;

3.本地方法栈:和虚拟机栈类似,不过是给Native方法(比如调用C/C++的方法)用的,同样会抛StackOverflowError和OOM;

4.堆:所有线程共享,是JVM内存最大的一块,专门存对象实例和数组,垃圾回收的

文档评论(0)

1亿VIP精品文档

相关文档