美文网首页
java虚拟机jvm性能调优实战-note

java虚拟机jvm性能调优实战-note

作者: robertzhai | 来源:发表于2023-06-13 21:53 被阅读0次
image.png
image.png
image.png
image.png image.png image.png image.png

为什么需要双亲委派模型

  • 避免重复加载
  • 安全
  • 重写父类的loadClass方法来打破

查看class bytecode文件

  • jclasslib

程序计数器

image.png image.png
image.png

stack && heap

image.png

查看java进程的内存映像

  • jmap heap pid
image.png

jvm 内存评估和设置

image.png
image.png

jvisualvm

  • 查看方法区的类

方法区

image.png

class constant pool (class常量池)

  • Jdk1.8及之后: 无永久代,运行时常量池在元空间,字符串常量池里依然在堆里


    image.png
image.png
image.png image.png image.png image.png image.png image.png
  • class常量池

java文件被编译成class文件之后,会在class文件中生成我们所说的class常量池,class文件中除了包含类的版本、字段、方法、接口等描述信息外,还有一项信息就是常量池(constant pool table)

  • 运行时常量池

当类加载到内存中后,jvm就会将class常量池中的内容存放到运行时常量池中

jol

  • 查看对象

object layout

image.png image.png image.png image.png
  • 内存对齐为了提高cpu性能
image.png
  • markword


    image.png
image.png image.png
image.png image.png image.png image.png

偏向锁 升级 轻量级锁 升级 重量级锁

image.png image.png image.png

相关文章

网友评论

      本文标题:java虚拟机jvm性能调优实战-note

      本文链接:https://www.haomeiwen.com/subject/cutfydtx.html