zoukankan      html  css  js  c++  java
  • Jvm参数配置

    一、非稳态选项使用说明

    -XX:+<option> 启用option
    -XX:-<option> 不启用option
    -XX:<option>=<number> 设定option的值为数字类型,可跟单位,例如 32k, 1024m, 2g
    -XX:<option>=<string> 设定option的值为字符串,例如-XX:HeapDumpPath=./dump.core

    二、Java相关的JVM内存参数

    -Xms :设置Java堆栈的初始化大小
    -Xmx :设置最大的java堆大小
    -Xmn :设置Young区大小
    -Xss :设置java线程堆栈大小
    -XX:PermSize and MaxPermSize :设置持久带的大小
    -XX:NewRatio :设置年轻代和老年代的比值
    -XX:NewSize :设置年轻代的大小
    -XX:SurvivorRation=n :设置年轻代中E去与俩个S去的比值

    三、打印垃圾回收器信息和设置垃圾回收器(串行、并行、并发等行为的收集器)

    -verbose:gc :记录GC运行以及运行时间,一般用来查看GC是否有瓶颈
    -XX:+PrintGCDetails :记录GC运行时的详细数据信息,包括新生占用的内存大小及消耗时间
    -XX:-PrintGCTimeStamps :打印收集的时间戳
    -XX:+UseParallelGC :使用并行垃圾收集器
    -XX:-UseConcMarkSweepGC :使用并发标志扫描收集器
    -XX:-UseSerialGC :使用串行垃圾收集器
    -Xloggc:filename :设置GC记录的文件
    -XX:+UseGCLogFileRotation :启用GC日志文件的自动转储
    -XX:GCLogFileSize=1M :控制GC日志文件的大小

    四、调试参数

    -Xdebug
    -Xnoagent
    -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
    -XX:HeapDumpPath=./java_pid.hprof :Path to directory or file name for heap dump.
    -XX:-PrintConcurrentLocks :Print java.util.concurrent locks in Ctrl-Break thread dump.
    -XX:-PrintCommandLineFlags :Print flags that appeared on the command line.

    五、关于性能

    -Xprof
    -Xrunhprof

    六、类加载和卸载的信息

    Xbootclasspath :指定需要加载,但不想通过校验类路径。
    JVM会对所有的类在加载前进行校验并为每个类通过一个int数值来应用
    -XX:+TraceClassLoading :跟踪类加载的信息(诊断内存泄露很有用)
    -XX:+TraceClassUnloading :跟踪类卸载的信息(诊断内存泄露很有用)

    七、jvm测试案例

    1)首先配置VM arguments

    2)案例

    3)运行程序后,GC日志就可以打印出来了

    DefNew(年轻代)
        年轻代分三个区。一个Eden区,两个Survivor区。大部分对象在Eden区中生成。当Eden区满时,还存活的对象将被复制到Survivor区(两个中的一个),当这个Survivor区满时,此区的存活对象将被复制到另外一个Survivor区,当这个Survivor区也满了的时候,从第一个Survivor区复制过来的并且此时还存活的对象,将被复制“年老区(Tenured)”。需要注意,Survivor的两个区是对称的,没先后关系,所以同一个区中可能同时存在从Eden复制过来对象,和从前一个Survivor复制过来的对象,而复制到年老区的只有从第一个Survivor区过来的对象。而且Survivor区总有一个是空 的。
    Tenured(年老代)
        年老代存放从年轻代存活的对象。一般来说年老代存放的都是生命期较长的对象。
    Perm(持久代)
        用于存放静态文件,持久代对垃圾回收没有显著影响,持久代大小通过-XX:MaxPermSize=<N>进行设置。

  • 相关阅读:
    安装wampserver时提示丢失MSVCR110.dll(在windows server上可用)
    前端开发必备!Emmet使用手册
    Markdown 新手指南
    封装系统(以封装Windows 7为例)
    简体中国版文档的Markdown语法
    sublime text 3 快捷键大全以及配置编译环境
    windows下的命令行工具babun
    Android屏幕适配全攻略(最权威的官方适配指导)
    JMETER第五节课jenkis集成常态化压测的实战?主从压力机实战??
    性能测试5--Jmeter命令行与以及普罗米修斯的原理
  • 原文地址:https://www.cnblogs.com/steven520213/p/6804302.html
Copyright © 2011-2022 走看看