对于 Parallel Scavenge + Parallel Old
- 新生代:PSYoungGen
- 老年代:ParOldGen
- 永久代:PSPermGen

后面方括号内部的

“3324K->152K(3712K)”

含义是  回收:  前->后 (总)

“GC前该内存区域使用容量->GC该内存区域已使用容量(该内存区域总容量)”。

在方括号之外的

“3324K->152K(11904K)

”表示“GC前Java堆已使用容量->GC后Java堆已使用容量(Java堆总容量)”。

Parallel/ParallelOld收集器的日志

新生代

0.110: [GC [PSYoungGen: 32768K->384K(38208K)] 32768K->26662K(125632K), 0.0317620 secs]
[Times: user=0.04 sys=0.03, real=0.03 secs]

[GC [PSYoungGen: 32768K->384K(38208K)] 32768K->26662K(125632K),表示执行完后新生代的内存使用率,PSYoungGen表示所回收的内存区域类型,与使用的垃圾收集器相关,PS来说,新生代是PSYoungGen,年老代是ParOldGen,永久代是PSPermGen。

32768K为回收前新生代的内存使用大小,384K为回收后新生代的内存使用大小,38208K为新生代的内存总大小。后面的 32768K是回收前Java堆区的整体内存使用大小,26662K是回收后Java堆区的整体内存使用大小,125632K是整个Java堆区的内存大小。

0.0317620 表示此次执行MinorGC的耗时,以秒为单位。

[Times: user=0.04 sys=0.03, real=0.03 secs],表示程序耗时、系统耗时、实际耗时。如何发现user或者sys的时间超过real的时间,这是正常的,因为如果是多线程的话,进行CPU切换,会叠加多线程的时间。

对象分布

0.223: [GC
Desired survivor size 5570560 bytes, new threshold 7 (max 15)
[PSYoungGen: 29285K->416K(38208K)] 187914K->181767K(239104K), 0.0342700 secs]
[Times: user=0.04 sys=0.01, real=0.04 secs]

年老代

0.186: [Full GC [PSYoungGen: 29813K->13540K(38208K)] [ParOldGen: 64141K->77375K(87424K)] 93955K->90916K(125632K) [PSPermGen: 2872K->2870K(21248K)], 0.0321400 secs] [Times: user=0.03 sys=0.01, real=0.03 secs]

完整log

2015-04-30T14:54:41.461+0800: 99170.722: [GC [PSYoungGen: 690000K->8498K(688704K)] 2084845K->1405110K(2086848K), 0.0223390 secs] [Times: user=0.05 sys=0.00, real=0.02 secs]
2015-04-30T14:55:05.874+0800: 99195.134: [GC [PSYoungGen: 688690K->7584K(689600K)] 2085302K->1404798K(2087744K), 0.0223200 secs] [Times: user=0.04 sys=0.01, real=0.03 secs]
2015-04-30T14:55:05.913+0800: 99195.173: [Full GC [PSYoungGen: 7584K->0K(689600K)] [ParOldGen: 1397214K->913970K(1398144K)] 1404798K->913970K(2087744K) [PSPermGen: 83025K->82697K(166016K)], 4.3123060 secs] [Times: user=13.48 sys=0.17, real=4.32 secs]
2015-04-30T14:55:31.227+0800: 99220.488: [GC [PSYoungGen: 680192K->8010K(689792K)] 1594162K->921980K(2087936K), 0.0412930 secs] [Times: user=0.09 sys=0.00, real=0.04 secs]
 

http://www.thinksaas.cn/topics/0/400/400891.html

http://blog.csdn.net/wenhuayuzhihui/article/details/52300088

gc 日志格式的更多相关文章

  1. 浅谈 G1 GC 日志格式

    在 Java9 中,G1 GC 将成为默认的垃圾收集器,G1 垃圾收集器的关键特性之一是能够在不牺牲吞吐量的同时,限制 GC 暂停时间(即可以设置所需的最大停顿时间). 由于 G1 GC 正在逐渐成为 ...

  2. JVM实用参数(八)GC日志

    本系列的最后一部分是有关垃圾收集(GC)日志的JVM参数.GC日志是一个很重要的工具,它准确记录了每一次的GC的执行时间和执行结果,通过分析GC日志可以优化堆设置和GC设置,或者改进应用程序的对象分配 ...

  3. <JVM下篇:性能监控与调优篇>05-分析GC日志

    笔记来源:尚硅谷JVM全套教程,百万播放,全网巅峰(宋红康详解java虚拟机) 同步更新:https://gitee.com/vectorx/NOTE_JVM https://codechina.cs ...

  4. 理解GC日志

    每一种收集器的日志形式都是由它们自身的实现所决定的,换而言之,每个收集器的日志格式都可以不一样.但虚拟机设计者为了方便用户阅读,将各个收集器的日志都维持一定的共性,例如以下两段典型的GC日志: 33. ...

  5. 浅析JVM中的GC日志

    目录 一.GC日志的格式分析 二.运行时开启GC日志 一.GC日志的格式分析 在讲述GC日志之前,我们先来运行下面这段代码 package com.example; public class Test ...

  6. GC日志介绍

    每一种收集器的日志形式都是由它们自身的实现所决定的,换而言之,每个收集器的日志格式都可以不一样.但虚拟机设计者为了方便用户阅读,将各个收集器的日志都维持一定的共性,例如以下两段典型的GC日志: 33. ...

  7. 快速解读GC日志(转)

    本文是 Plumbr 发行的 Java垃圾收集手册 的部分内容.文中将介绍GC日志的输出格式, 以及如何解读GC日志, 从中提取有用的信息.我们通过 -XX:+UseSerialGC 选项,指定JVM ...

  8. 一次CMS GC问题排查过程(理解原理+读懂GC日志)

    这个是之前处理过的一个线上问题,处理过程断断续续,经历了两周多的时间,中间各种尝试,总结如下.这篇文章分三部分: 1.问题的场景和处理过程:2.GC的一些理论东西:3.看懂GC的日志 先说一下问题吧 ...

  9. 《深入理解Java虚拟机》(六)堆内存使用分析,垃圾收集器 GC 日志解读

    堆内存使用分析,GC 日志解读 重要的东东 在Java中,对象实例都是在堆上创建.一些类信息,常量,静态变量等存储在方法区.堆和方法区都是线程共享的. GC机制是由JVM提供,用来清理需要清除的对象, ...

随机推荐

  1. 九度OJ题目1387斐波那契数列

    /*斐波那契数列,又称黄金分割数列,指的是这样一个数列: 0.1.1.2.3.5.8.13.21.…… 在数学上,斐波纳契数列被定义如下: F0=0,F1=1, Fn=F(n-1)+F(n-2)(n& ...

  2. jQuery中怎么添加innerText、innerHtml(转)

    发现如果我在div或者其他非表单的标签中赋值,原本用普通的js就直接document.getElementById("id").innerHtml(或者其他几个)就可以了. 但是在 ...

  3. js和css内联外联注意事项

    简单说:这两个问题其实是同一个问题,但是网上找了好久也找不到方法,外联的js和css文件里不能有任何HTML的标记注释,一旦有,浏览器就疯了!一去掉就好了!!! 问题:起因是网上看到一个css的表格样 ...

  4. Keepalived+MySQL实现高可用(转)

    http://www.cnblogs.com/wingsless/p/4033093.html   MHA高可用 http://www.cnblogs.com/gomysql/p/3856484.ht ...

  5. mysql常用命令集锦

    一.DCL语句(数据控制语句) 1.授权远程访问,针对IP和用户.DB的 grant {privilege list} on {dbname}.* to '{user}'@'{ip}' identif ...

  6. Oracle自增主键的添加[sequence]--表数据已存在

    --增加主键ID ); --设置sequence使ID自增 create sequence SEQ_ID minvalue maxvalue start ; --将id的值设置为sequence Up ...

  7. 在Ext JS 5应用程序中如何使用路由

    简介 Ext JS 5是一个重要的发布版本,它提供了许多新特性来创建丰富的.企业级的Web应用程序.MVVM和双向数据绑定为开发人员承担了大量的繁重工作.在Ext JS 5种,另一个新特性就是路由,它 ...

  8. Git基本命令

    获取master: git clone ssh://some.i.p/some/source/~/somerep 获取branch: git clone -b branch-version ssh:/ ...

  9. Photoshop CS3 如何汉化

    1. 下载汉化包 http://download.csdn.net/detail/yangtian1158/8740959 2. 将下载的.bat文件放到CS3的安装目录里即可 C:\Program ...

  10. IntelliJ IDEA使用SSH功能

    Tools→Start SSH session... 选择Edit credentials... 输入SSH登录信息即可 输入SSH登录信息,Port默认为22 来自为知笔记(Wiz)