了解java虚拟机—JVM相关参数设置(2)

1.   JVM相关参数设置

JVM相关配置

-XX:+PrintGC

两次次YoungGC,两次FullGC。

-XX:+PrintGCDetails

打印GC时的内存,并且在程序结束时打印堆内存使用情况

-XX:+PrintHeapAtGC

每次GC时会分别打印回收前与回收后堆信息

-XX:+PrintGCTimeStamps

选择打印GC的方式后,再添加此参数。比如:-XX:+PrintGC -XX:+PrintGCTimeStamps

每次GC时会打印程序启动后至GC发生的时间戳。

-XX:+PrintGCApplicationConcurrentTime

打印每次GC时程序运行的时间,当GC后时间置为0.

-XX:+PrintGCApplicationStoppedTime

每次GC使程序停顿的时间

-XX:+PrintReferenceGC

用来跟踪系统内的(softReference)软引用,(weadReference)弱引用,(phantomReference)虚引用,显示引用过程。弱引用,软引用及虚引用对GC的影响

-Xloggc:logpath

将GC日志输出到指定位置。

-verbose:class

跟踪类的加载和卸载,亦可单独配置-XX:+TraceClassLoading跟踪类的加载或单独配置-XX:+TraceClassUnloading

-XX:+PrintClassHistogram

打印出实例的数量以及空间大小

-XX:+PrintVMOptions

打印出JVM接受到的显式(主动配置的)命令行参数

-XX:+PrintCommandLineFlags

打印出显式(主动配置)和隐式(JVM自行设置)

-XX:+PrintFlagsFinal

打印出所有的系统参数值。

?版权声明:本文为【翰林小院】(huhanlin.com)原创文章,转载时请注明出处!

原文地址:https://www.cnblogs.com/hanlinhu/p/9487032.html

时间: 2024-10-11 23:10:59

了解java虚拟机—JVM相关参数设置(2)的相关文章

了解java虚拟机—堆相关参数设置(3)

堆相关配置 -Xmx 最大堆空间 -Xms 初始堆空间大小,如果初始堆空间耗尽,JVM会对堆空间扩容,其扩展上限为最大堆空间.通常-Xms与-Xmx设置为同样大小,避免扩容造成性能损耗. -Xmn 设置新生代大小,设置一个较大的新生代会减少老年代的大小,新生代的大小一般设置为整个堆空间的1/3 或者1/4. -XX:SurvivorRatio 设置新生代中eden空间和from/to空间的比例关系. -XX:SurvivorRatio=eden/from=eden/to 例如:-Xmx20m -

jvm相关参数及java内存调优常用命令方法

1.通过 jstat -gc pid interval 查看每次 GC 之后,具体每一个分区的内存使用率变化情况 2.通过jcmd pid VM.flags 就可以查看到jvm相关的设置参数 3.通过“jmap -heap 进程id”查询出 当前进程的JVM 的配置信息,其中就包括垃圾收集器的设置类型 4.查看 & 分析 GC 日志 首先,我们需要通过 JVM 参数预先设置 GC 日志,通常有以下几种 JVM 参数设置: -XX:+PrintGC 输出 GC 日志-XX:+PrintGCDeta

深入理解Java虚拟机-常用vm参数分析

Java虚拟机深入理解系列全部文章更新中... 深入理解Java虚拟机-Java内存区域透彻分析 深入理解Java虚拟机-常用vm参数分析 深入理解Java虚拟机-JVM内存分配与回收策略原理,从此告别JVM内存分配文盲 深入理解Java虚拟机-如何利用JDK自带的命令行工具监控上百万的高并发的虚拟机性能 深入理解Java虚拟机-如何利用VisualVM对高并发项目进行性能分析 深入理解Java虚拟机-你了解GC算法原理吗 话不多说,今天就分析一下一些常用的Java虚拟机的参数设置,以及如何更好

jvm常用参数设置 good

1.堆的大小可以通过 -Xms 和 -Xmx 来设置,一般将他们设置为相同的大小,目的是避免在每次垃圾回收后重新调整堆的大小,比如 -Xms=2g -Xmx=2g 或者 -Xms=512m -Xmx=512m 2.年轻代大小可以通过 -Xmn 来设置,比如-Xmn=2g 或者 -Xmn512m,此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8 3.年老代大小 = 堆大小 – 年轻代大小 4.持久代或者永久代大小可以通过 -XX:PermSize 和 -XX:MaxPermSize 来控

《深入理解Java虚拟机 JVM高级特性...》核心笔记

深入理解Java虚拟机 JVM高级特性与最佳实践(第二版) 核心笔记 JAVA 环境: JAVA虚拟机高级特性: 一:java内存区域与内存异常 一):运行数据区     1:程序计数器(Program Counter Register),也称"PC寄存器" A:用来指示需要执行哪条指令的.(在汇编语言中,CPU在得到指令之后,程序计数器便自动加1或者根据                    转移指针得到下一条指令的地址,如此循环,直至执行完所有的指令.) B:由于在JVM中,多线程

java虚拟机--JVM

java虚拟机 是安装在计算机操作系统上的一个虚拟计算机. 专门用于处理java程序和底层操作系统的链接工作,将java程序翻译成底层的操作系统可以理解的语言. 有别于JDK.JDK是java的开发环境,是java开发人员需要的,里面除了JVM,还有一些其他的东西.JVM是小于JDK的. JVM的结构图如下图所示: 1. 类加载器:加载类文件到内存.[这里的类文件是class文件] 2. 运行数据区:1中加载的class文件,全部保存在运行数据区.java能够很好的运行,也是得益于运行数据区的管

JVM相关参数配置和问题诊断<转>

原文连接:http://blog.csdn.net/chjttony/article/details/6240457 1.Websphere JVM相关问题诊断: 由JVM引起的Websphere问题主要有应用服务器宕机和性能下降,JVM相关问题的特征如下: (1).Websphere应用服务器停止响应: a.Websphere服务器宕机. b.Websphere进程挂起. c.JVM内存溢出. (2).性能下降: JVM进程号(process Id)不停地改变. 2.诊断JVM相关问题所需文件

java虚拟机jvm启动后java代码层面发生了什么?

java虚拟机jvm启动后java代码层面发生了什么? 0000 我想验证的事情 java代码在被编译后可以被jdk提供的java命令进行加载和运行, 在我们的程序被运行起来的时候,都发生了什么事情, 下面就来探究下这个问题, 这个问题被拆成了两个问题, 第一个问题用来确定发生了哪些事情, 第二个问题用来确定这些事情是如何进行的. java进程里面都发生了哪些活动? 这些活动在java代码(反编译或者是源码)级别有所体现吗? 0001 寻找验证的方式 当我在探究上面两个问题时, 我想了很多方式去

JVM常用参数设置

-server -Xms8g 初始堆大小 -Xmx8g 最大堆大小 -Xmn2g 年轻代大小 -Xss1024K 每个线程的堆栈大小 -XX:PermSize=256m -XX:MaxPermSize=512m Perm不属于堆内存,由虚拟机直接分配,可通过-XX:PermSize -XX:MaxPermSize 等参数调整其大小 设置持久代(perm gen)初始值   设置持久代最大值 -XX:ParallelGCThreads=8 并行收集器的线程数 -XX:+UseConcMarkSwe