阿里面试官(性能优化):描述一下jvm加载class文件的原理机制?

简介: 相信很多人对于性能优化都不陌生,为了获得更好的系统性能,或者是为了满足不断增加的业务需求。都需要用到我们的性能调优。所以性能优化在面试中出现的频率特别高楼主自认为自己对性能优化相关知识有很多了解,而且因为最近在找工作面试,所以单独复习了很多关于索引的知识。


相信很多人对于性能优化都不陌生,为了获得更好的系统性能,或者是为了满足不断增加的业务需求。

都需要用到我们的性能调优。所以性能优化在面试中出现的频率特别高

楼主自认为自己对性能优化相关知识有很多了解,而且因为最近在找工作面试,所以单独复习了很多关于索引的知识。

但是,我还是图样图森破,直到我被阿里的面试官虐过之后我才知道,自己在性能优化方面的知识,只是个小学生水平。

以下是我总结的一次阿里面试中关于性能优化的面试问题以及知识点。

tomcat性能调优

  1. 怎么给tomcat调优
  2. 如何加大comcat连接数
  3. 怎么加大tomcat的内存
  4. tomcat中如何禁止列目录下的文件
  5. Tomcat有几种部署方式
  6. tomcat的优化经验

答案解析

jvm性能优化专题:

  1. Java类加载过程
  2. java内存分配
  3. 描述一下jvm加载class文件的原理机制
  4. GC是什么?为什么要有GC?
  5. 简述java垃圾回收机制
  6. 如何判断一个对象是否存活?(或者GC对象的判定方法)
  7. 垃圾回收的优点和原理。并考虑2种回收机制。
  8. 垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?
  9. 有什么办法主动通知虚拟机进行垃圾回收?
  10. java中会存在内存泄漏吗,请简单描述。
  11. 深拷贝和浅拷贝
  12. syatem,gc()和runtime,gc()会做做什么事情?
  13. finalize方法什么时候被调用?析构函数(finalizatinon)的目的是什么?
  14. 如何对象的引用被置为null,垃圾收集器是否会立即释放对象占用的内存?
  15. 什么是分布式垃圾回收(DGC)?它是如何工作的?
  16. 串行(serial)收集器和吞吐量(throughout)收集器的区别是什么?
  17. 在Java中,对象什么时候可以被垃圾回收?
  18. 简述Java内存分配与回收策率以及minor GC和majorGC。
  19. jvm的永久代中会发生垃圾回收吗?
  20. Java中垃圾收集的方法有哪些?
  21. 什么是类加载器,类加载器有哪些?

答案解析

mysql性能优化整理(知识点思维导图):

思维导图

性能优化一直是大厂面试的一个重点,希望同学们能够从本文学到知识,梳理出自己的学习路线,同时由于文章长度的限制,文中题目答案没有一一列出来,有需要答案和高清的学习思维路线导图的朋友可以点击此处获取。小编因为面试的原因,同事也整理了有关微服务,并发编程等等知识点,感兴趣的朋友也都可以点击此处获取。希望大家面试跳槽都能顺利通过


相关文章
|
3月前
|
Arthas 监控 Java
Arthas redefine(加载外部的.class文件,redefine到JVM里 )
Arthas redefine(加载外部的.class文件,redefine到JVM里 )
113 15
|
3月前
|
Arthas 监控 Java
Arthas sc(查看JVM已加载的类信息 )
Arthas sc(查看JVM已加载的类信息 )
68 9
|
8月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
214 2
|
6月前
|
存储 监控 算法
Java JVM 面试题
Java JVM(虚拟机)相关基础面试题
|
8月前
|
SQL 缓存 监控
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
本文详细解析了数据库、缓存、异步处理和Web性能优化四大策略,系统性能优化必知必备,大厂面试高频。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
大厂面试高频:4 大性能优化策略(数据库、SQL、JVM等)
|
8月前
|
存储 算法 安全
JVM常见面试题(四):垃圾回收
堆区域划分,对象什么时候可以被垃圾器回收,如何定位垃圾——引用计数法、可达性分析算法,JVM垃圾回收算法——标记清除算法、标记整理算法、复制算法、分代回收算法;JVM垃圾回收器——串行、并行、CMS垃圾回收器、G1垃圾回收器;强引用、软引用、弱引用、虚引用
|
8月前
|
Arthas 监控 Java
JVM进阶调优系列(9)大厂面试官:内存溢出几种?能否现场演示一下?| 面试就那点事
本文介绍了JVM内存溢出(OOM)的四种类型:堆内存、栈内存、元数据区和直接内存溢出。每种类型通过示例代码演示了如何触发OOM,并分析了其原因。文章还提供了如何使用JVM命令工具(如jmap、jhat、GCeasy、Arthas等)分析和定位内存溢出问题的方法。最后,强调了合理设置JVM参数和及时回收内存的重要性。
|
7月前
|
存储 安全 Java
JVM加载过程
JVM类加载过程是Java开发中的关键环节,主要包括五个阶段:加载、验证、准备、解析和初始化。加载阶段获取类的二进制字节流;验证确保字节码符合规范;准备为静态变量分配内存并默认初始化;解析将符号引用转为直接引用;初始化执行静态变量赋值和静态代码块。了解这一过程有助于深入理解Java程序运行机制,提升编程水平。
|
2月前
|
Arthas 存储 算法
深入理解JVM,包含字节码文件,内存结构,垃圾回收,类的声明周期,类加载器
JVM全称是Java Virtual Machine-Java虚拟机JVM作用:本质上是一个运行在计算机上的程序,职责是运行Java字节码文件,编译为机器码交由计算机运行类的生命周期概述:类的生命周期描述了一个类加载,使用,卸载的整个过类的生命周期阶段:类的声明周期主要分为五个阶段:加载->连接->初始化->使用->卸载,其中连接中分为三个小阶段验证->准备->解析类加载器的定义:JVM提供类加载器给Java程序去获取类和接口字节码数据类加载器的作用:类加载器接受字节码文件。
261 55
|
3月前
|
Arthas 监控 Java
Arthas memory(查看 JVM 内存信息)
Arthas memory(查看 JVM 内存信息)
151 6