JVM调优

Posted showMeTheCodes

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM调优相关的知识,希望对你有一定的参考价值。

一、Runtime Data Area

1、包括

  Program Counter:PC,存放指令的位置。     取PC中的位置,找到对应位置的指令-->执行该指令-->指令++

  Direct Memory:JVM可以直接访问的内核空间的内存。NIO,提高效率,直线零拷贝

  method area:被所有线程共享,class的结构存放方法区

          jdk1.7中的永久代和jdk1.8中的元数据区是method area的实现方式

  JVM stacks:存放栈帧

  heap:被所有线程共享

二、栈帧

  栈帧:每个方法对应一个栈帧,方法启动后就会生成栈帧

  局部变量表,当前方法中运用到的局部变量

  操作数栈

三、栈的执行过程

Hello hello = new Hello();对象的创建过程

  ①在堆中创建一个对象,该对象为默认值

  ②该对象地址会压栈

     ③调用构造方法赋初始值

  ④地址弹栈(store指令)将new Hello()赋值给hello

store指令:弹栈

load指令:压栈

pop指令:将值放到栈顶

init指令:构造方法赋初始值

 

 

以上是关于JVM调优的主要内容,如果未能解决你的问题,请参考以下文章

JVM调优经验分享

JVM性能调优1:JVM性能调优理论及实践(收集整理)

JVM性能调优

JVM性能调优

jvm性能调优都做了啥

JVM参数调优详解