1.jvm基本知识

目录

概述

相关文章在此总结如下:

文章 地址
jvm类加载系统 地址
双亲委派模型与打破双亲委派 地址
运行时数据区 地址
运行时数据区-字符串常量池、程序计数器、直接内存 地址
jvm中对象创建流程与内存分配 地址
jvm对象内存布局 地址
GC基本原理 地址

jvm虚拟机三问

jvm是什么?

广义上指的是一种规范,狭义上是 jdk 中的 jvm 虚拟机(实际上是各厂商实现的虚拟机,如:Hotspot、zing、j9等)

java 和 jvm 的关系

由上图,JVM是宿主,java通过编译成 class文件格式在 jvm上运行。

为什么学jvm

  • 为了面试
  • 研发中难点问题会与jvm有关系。如:线程死锁、内存溢出、项目性能优化等。
  • 想要深入java语言,必需要学习jvm

怎么学习

  1. jvm基础知识
  2. 类加载系统
  3. 运行时数据区
  4. 一个对象的一生
  5. GC收集器
  6. 实战

为什么jvm调优?

  • 调优的最终目的都是为了应用程序使用最小的硬件来承载更大的吞吐量。
  • 更少的内存、更低的延迟、更大的吞吐量、减少应用的GC暂停时间
  • GC暂停会在高并发场景下,P99百分位的响应时间会产生影响

什么时候jvm调优

  • 系统吞吐量与响应性能不高或下降
  • Heap内存(老年代)持续上涨达到设置的最大内存值
  • Full GC 次数频繁
  • GC停顿时间过长(超过1s)
  • 应用出现OutOfMemory等内存异常
  • 应用中有使用本地缓存、且占用了大量的内存空间

调优调什么

  • 内存分配
  • 垃圾回收器选配

结束

相关推荐
jmxwzy3 小时前
JVM(java虚拟机)
jvm
Maỿbe3 小时前
JVM中的类加载&&Minor GC与Full GC
jvm
人道领域4 小时前
【零基础学java】(等待唤醒机制,线程池补充)
java·开发语言·jvm
小突突突5 小时前
浅谈JVM
jvm
饺子大魔王的男人6 小时前
远程调试总碰壁?局域网成 “绊脚石”?Remote JVM Debug与cpolar的合作让效率飙升
网络·jvm
天“码”行空16 小时前
java面向对象的三大特性之一多态
java·开发语言·jvm
独自破碎E21 小时前
JVM的内存区域是怎么划分的?
jvm
期待のcode1 天前
认识Java虚拟机
java·开发语言·jvm
leaves falling1 天前
一篇文章深入理解指针
jvm
linweidong1 天前
C++ 中避免悬挂引用的企业策略有哪些?
java·jvm·c++