java虚拟机优化--gc日志

加入

wrapper.java.additional.5=-XX:+PrintGC

wrapper.java.additional.6=-XX:+PrintGCDetails

#wrapper.java.additional.7=-XX:+PrintGC:PrintGCTimeStamps

wrapper.java.additional.7=-Xloggc:gc.log

wrapper.java.additional.8=-XX:+PrintGCApplicationStoppedTime

wrapper.java.additional.9=-Xmn1200m

wrapper.java.additional.10=-XX:+UseConcMarkSweepGC

wrapper.java.additional.11=-XX:+UseParNewGC

wrapper.java.additional.12=-XX:+CMSParallelRemarkEnabled

wrapper.java.additional.13=-XX:+UseCMSCompactAtFullCollection

在tomcat的bin目录下打印出gc日志

查看年轻代  年老代的非配

wrapper.java.additional.9=-Xmn1200m

参数就是调整年轻代的参数,一般是总jvm内存的40%

时间: 2024-10-08 07:07:03

java虚拟机优化--gc日志的相关文章

java虚拟机(十一)--GC日志分析

打印日志相关参数: -XX:+PrintGCDetails -XX:PrintGCTimestamps -XX:PrintGCDateStamps -Xloggc:$CATALINA_HOME/logs/gc.log -XX:+PrintHeapAtGC -XX:+PrintTenuringDistriution:发生GC的时候,把Young区中对象的年龄打印出来 其余的参数应该能直接看懂的,就不解释了. Parallel日志: 默认情况下,都是使用Parallel收集器 JAVA_OPTS="

Java虚拟机(4)-GC概述,如何回收对象

1.垃圾回收概述 随着程序的不断运行,程序所产生的对象必将越来越多,而系统的内存则是有限的,所以,将没有用的对象进行清除是程序长期稳定运行的关键. 垃圾回收主要关注三个问题 什么对象应该被回收? 当然是没有用的对象.当对象不再被引用时,我们认为该对象应该被回收.如何判断对象是否还被引用,会在后面详述. 对象应该在什么时间被回收? 程序在运行过程中,对象的引用关系是一直变化的,如何选择合适的时机开始GC,也是一个重要的问题,后面详述. 应该怎样回收? 当我们知道是无用对象后,如何将无用对象清除,保

java虚拟机之GC(转)

垃圾回收主要内容: 1. 那些内存需要回收? 2. 什么时候回收? 3. 如何回收? 垃圾回收主要针对运行时数据区那些区域? 运行时数据区的线程私有区域有:虚拟机栈,本地方法栈,程序计数器等: 栈中的栈帧随着方法的进入和退出执行入栈和出栈,每个栈帧的内存分配在编译期就已经确定: 随着线程或方法的结束,内存也随着回收: 运行时数据区的线程共享区域有:方法区,堆: 方法区和堆只有程序处于运行期才能确定创建那些对象,因此这部分内存分配和回收都是动态的: 垃圾回收的重点区域: 一,对象存活判断 1,引用

【JVM虚拟机】GC日志样例解读

近期查看产品日志,看到如下GC日志,收集整理如下 Tomcat垃圾回收日志(tomcat-gc*.log) 2019-09-29T06:01:00.041+0800: 1310458.865: [GC (Allocation Failure) 2019-09-29T06:01:00.041+0800: 1310458.866: [ParNew: 366307K->2255K(386880K), 0.0214515 secs] 1016409K->652361K(1369920K), 0.022

Java虚拟机:GC算法深度解析

版权声明:本文为博主原创文章,转载请注明出处,欢迎交流学习! 在前面的文章里介绍了可达性分析算法,它为我们解决了判定哪些对象可以回收的问题,接下来就该我们的垃圾收集算法出场了.不同的垃圾收集算法有各自不同的优缺点,在JVM实现中,往往不是采用单一的一种算法进行回收,而是采用几种不同的算法组合使用,来达到最好的收集效果.接下来详细介绍几种垃圾收集算法的思想及发展过程.  最基础的收集算法 -- 标记/清除算法        之所以说标记/清除算法是几种GC算法中最基础的算法,是因为后续的收集算法都

在weblogic中打开gc日志开关并打印详细信息

在相应的domain目录下进入setDomainEnv.sh JAVA_OPTIONS="后面增加 sun jdk: ${JAVA_OPTIONS} -verbosegc -Xverboselog:/home/weblogic/bea/gc.`date +%Y%m%d_%H%M%S` IBM jdk ${JAVA_OPTIONS} -verbosegc -Xloggc:/home/weblogic/bea/gc.`date +%Y%m%d_%H%M%S` 故此,gc开关打开 每次showdown

java gc的工作原理、如何优化GC的性能、如何和GC进行有效的交互

java gc的工作原理.如何优化GC的性能.如何和GC进行有效的交互 一个优秀的Java 程序员必须了解GC 的工作原理.如何优化GC的性能.如何和GC进行有效的交互,因为有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等.只有全面提升内存的管理效 率,才能提高整个应用程序的性能. 本篇文章首先简单介绍GC的工作原理,然后再对GC的几个关键问题进行深入探讨,最后提出一些Java程序设计建议,从GC角度提高Java程序的性能. GC的基本原理     Java 的内存管理实际上就是对象的管

深入理解Java虚拟机-如何利用VisualVM对高并发项目进行性能分析

Java虚拟机深入理解系列全部文章更新中... 深入理解Java虚拟机-Java内存区域透彻分析 深入理解Java虚拟机-常用vm参数分析 深入理解Java虚拟机-JVM内存分配与回收策略原理,从此告别JVM内存分配文盲 深入理解Java虚拟机-如何利用JDK自带的命令行工具监控上百万的高并发的虚拟机性能 深入理解Java虚拟机-如何利用VisualVM对高并发项目进行性能分析 深入理解Java虚拟机-你了解GC算法原理吗 前面在学习JVM的知识的时候,一般都需要利用相关参数进行分析,而分析一般

Java虚拟机-垃圾收集器

垃圾收集器(Garbage Collection, GC)的诞生引导出了三个问题: 哪些内存需要回收? 什么时候回收? 如何回收? 对于线程独占的三个区域(程序计数器.虚拟机栈.本地方法栈)不用过多的考虑垃圾回收的问题,因为他们随着线程创建而生,随着线程结束而消失.然而Java堆和方法区则不一样,一个接口的多个实现类需要的内存可能不一样,一个方法中的多个分支需要的内存也不一样,我们只有在程序运行的的时候才知道会创建哪些对象,这部分的内存分配是动态的,所以这也是GC所关注的方面. 如何判断对象已死