JVM-之GC日志

一、 开启gc 日志

在项目中开启GC 日志打印后会查看gc 日志如下

nohup java -Xms768m -Xmx768m  -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./dumplog/dumplog.log  -Xloggc:./dumplog/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC  -jar xxxx.jar > logsxxx.log 2>&1 &

gc日志如下

ava HotSpot(TM) 64-Bit Server VM (25.341-b10) for linux-amd64 JRE (1.8.0_341-b10), built on Jun 16 2022 15:46:36 by "java_re" with gcc 7.3.0
Memory: 4k page, physical 65808024k(44853816k free), swap 33030140k(33030140k free)
CommandLine flags: -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./dumplog/dumplog.log -XX:InitialHeapSize=805306368 -XX:MaxHeapSize=805306368 -XX:+PrintGC -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseParallelGC 
{Heap before GC invocations=1 (full 0):PSYoungGen      total 229376K, used 196608K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)eden space 196608K, 100% used [0x00000000f0000000,0x00000000fc000000,0x00000000fc000000)from space 32768K, 0% used [0x00000000fe000000,0x00000000fe000000,0x0000000100000000)to   space 32768K, 0% used [0x00000000fc000000,0x00000000fc000000,0x00000000fe000000)ParOldGen       total 524288K, used 0K [0x00000000d0000000, 0x00000000f0000000, 0x00000000f0000000)object space 524288K, 0% used [0x00000000d0000000,0x00000000d0000000,0x00000000f0000000)Metaspace       used 8770K, capacity 9102K, committed 9344K, reserved 1056768Kclass space    used 994K, capacity 1091K, committed 1152K, reserved 1048576K
2024-05-27T10:41:48.427+0800: 0.514: [GC (Allocation Failure) [PSYoungGen: 196608K->4724K(229376K)] 196608K->4732K(753664K), 0.0063968 secs] [Times: user=0.02 sys=0.00, real=0.00 secs] 
Heap after GC invocations=1 (full 0):PSYoungGen      total 229376K, used 4724K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)eden space 196608K, 0% used [0x00000000f0000000,0x00000000f0000000,0x00000000fc000000)from space 32768K, 14% used [0x00000000fc000000,0x00000000fc49d1b0,0x00000000fe000000)to   space 32768K, 0% used [0x00000000fe000000,0x00000000fe000000,0x0000000100000000)ParOldGen       total 524288K, used 8K [0x00000000d0000000, 0x00000000f0000000, 0x00000000f0000000)object space 524288K, 0% used [0x00000000d0000000,0x00000000d0002000,0x00000000f0000000)Metaspace       used 8770K, capacity 9102K, committed 9344K, reserved 1056768Kclass space    used 994K, capacity 1091K, committed 1152K, reserved 1048576K
}
{Heap before GC invocations=2 (full 0):PSYoungGen      total 229376K, used 201332K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)eden space 196608K, 100% used [0x00000000f0000000,0x00000000fc000000,0x00000000fc000000)from space 32768K, 14% used [0x00000000fc000000,0x00000000fc49d1b0,0x00000000fe000000)to   space 32768K, 0% used [0x00000000fe000000,0x00000000fe000000,0x0000000100000000)ParOldGen       total 524288K, used 8K [0x00000000d0000000, 0x00000000f0000000, 0x00000000f0000000)object space 524288K, 0% used [0x00000000d0000000,0x00000000d0002000,0x00000000f0000000)Metaspace       used 12742K, capacity 13228K, committed 13568K, reserved 1060864Kclass space    used 1547K, capacity 1706K, committed 1792K, reserved 1048576K
2024-05-27T10:41:48.632+0800: 0.719: [GC (Allocation Failure) [PSYoungGen: 201332K->5623K(229376K)] 201340K->5647K(753664K), 0.0056089 secs] [Times: user=0.01 sys=0.00, real=0.01 secs] 
Heap after GC invocations=2 (full 0):PSYoungGen      total 229376K, used 5623K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)eden space 196608K, 0% used [0x00000000f0000000,0x00000000f0000000,0x00000000fc000000)from space 32768K, 17% used [0x00000000fe000000,0x00000000fe57de18,0x0000000100000000)to   space 32768K, 0% used [0x00000000fc000000,0x00000000fc000000,0x00000000fe000000)ParOldGen       total 524288K, used 24K [0x00000000d0000000, 0x00000000f0000000, 0x00000000f0000000)object space 524288K, 0% used [0x00000000d0000000,0x00000000d0006000,0x00000000f0000000)Metaspace       used 12742K, capacity 13228K, committed 13568K, reserved 1060864Kclass space    used 1547K, capacity 1706K, committed 1792K, reserved 1048576K
}

在这里插入图片描述
在项目中如果需要查看使用的垃圾收集器出了使用GC 日志中去分析还可以使用如下命令

java -XX:+PrintCommandLineFlags -version  

在这里插入图片描述

二 GC 日志 Parallel Scavenge+Parallel Old 类型日志分析

jdk1.8以后-XX:+UseParallelGC是默认开启的,所以垃圾回收器的组合就是ps+po,ps+po 类型的垃圾回收器是jdk8 默认的垃圾回收器组合,JDK9 默认是G1垃圾回收器

2024-05-27T10:41:49.016+0800: 1.103: [GC (Metadata GC Threshold) [PSYoungGen: 201464K->8164K(229376K)] 201560K->8268K(753664K), 0.0099723 secs] [Times: user=0.03 sys=0.01, real=0.01 secs] 
Heap after GC invocations=4 (full 0):PSYoungGen      total 229376K, used 8164K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)eden space 196608K, 0% used [0x00000000f0000000,0x00000000f0000000,0x00000000fc000000)from space 32768K, 24% used [0x00000000fe000000,0x00000000fe7f93d0,0x0000000100000000)to   space 32768K, 0% used [0x00000000fc000000,0x00000000fc000000,0x00000000fe000000)ParOldGen       total 524288K, used 104K [0x00000000d0000000, 0x00000000f0000000, 0x00000000f0000000)object space 524288K, 0% used [0x00000000d0000000,0x00000000d001a010,0x00000000f0000000)Metaspace       used 20580K, capacity 21180K, committed 21248K, reserved 1067008Kclass space    used 2594K, capacity 2752K, committed 2816K, reserved 1048576K
}
{Heap before GC invocations=5 (full 1):PSYoungGen      total 229376K, used 8164K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)eden space 196608K, 0% used [0x00000000f0000000,0x00000000f0000000,0x00000000fc000000)from space 32768K, 24% used [0x00000000fe000000,0x00000000fe7f93d0,0x0000000100000000)to   space 32768K, 0% used [0x00000000fc000000,0x00000000fc000000,0x00000000fe000000)ParOldGen       total 524288K, used 104K [0x00000000d0000000, 0x00000000f0000000, 0x00000000f0000000)object space 524288K, 0% used [0x00000000d0000000,0x00000000d001a010,0x00000000f0000000)Metaspace       used 20580K, capacity 21180K, committed 21248K, reserved 1067008Kclass space    used 2594K, capacity 2752K, committed 2816K, reserved 1048576K
2024-05-27T10:41:49.026+0800: 1.113: [Full GC (Metadata GC Threshold) [PSYoungGen: 8164K->0K(229376K)] [ParOldGen: 104K->8031K(524288K)] 8268K->8031K(753664K), [Metaspace: 20580K->20578K(1067008K)], 0.0254521 secs] [Times: user=0.09 sys=0.00, real=0.02 secs] 

PSYoungGen 表示的是由Parallel Scavenge垃圾收集器管理的新生代,ParOldGen表示由Parallel Old管理的老年代。
第一行:
PSYoungGen total 229376K, used 196608K [0x00000000f0000000, 0x0000000100000000, 0x0000000100000000)

Parallel Scavenge垃圾收集器管理的新生代 ,新生代 工229M 使用 196 M

借用其他图说明
在这里插入图片描述
Full GC日志

在这里插入图片描述

[Full GC (Metadata GC Threshold) [PSYoungGen: 8164K->0K(229376K)] [ParOldGen: 104K->8031K(524288K)] 8268K->8031K(753664K), [Metaspace: 20580K->20578K(1067008K)], 0.0254521 secs] [Times: user=0.09 sys=0.00, real=0.02 secs]

[Full GC (Metadata GC Threshold) 表示触发了完整垃圾回收的特定原因是元数据区域的垃圾回收阈值被触发。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/17196.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git如何将pre-commit也提交到仓库

我一开始准备将pre-commit提交到仓库进行备份的,但是却发现提交不了,即使我使用强制提交都不行。 (main) $ git add ./.git/hooks/pre-commit(main) $ git status On branch main nothing to commit, working tree clean# 强制提交(main) $ git add -f .…

医学预测模型进入临床实践的三个考量

医学预测模型进入临床实践的三个考量 预测模型能够从患者的临床数据中挖掘出有价值的信息,用于辅助诊断、预后评估、治疗决策和风险分层等。随着,临床预测模型不断地被构建出来,需要考虑的一个问题是临床预测模型如何进入临床实践&#xff0…

前端基础入门三大核心之JS篇:解锁JavaScript的魔法密钥

前端基础入门三大核心之JS篇:解锁JavaScript的魔法密钥 🧙 基础概念与作用:JS,不仅仅是“脚本”👨‍💻 基础语法探险:从Hello World到变量声明🎯 Hello JavaScript📚 变量…

188M2传奇BLUEM2引擎源码开源版附带编译教程2024最新开源

2024最新开源188M2传奇BLUEM2引擎源码开源2版最初开源版本附带编译教程 源码下载地址:极速云 如果需要优惠可以选择第一版最初开源188M2传奇BLUEM2引擎源码开源1版最初开源版本附带编译教程2024最新开源

Android 通过布局生成图片

通过布局生成图片 首先效果图 在竖屏的情况下通过,一般情况下,只要布局在页面上可见,并显示全,通过布局生成图片,都可以,但是横屏就不行了,会出现图片显示不完全的情况。 val bitmap Bitmap.c…

异常捕获知识点

作用 通过异常捕获,可以避免当代码报错时,造成程序卡死的情况。 //将玩家输入的内容,存储string类型的变量(容器)中 string str Console.ReadLine(); //Parse转字符串为数值类型时,必须要合法合规 int i…

TCP/UDP 套接字的编写

文章目录 基础知识 socket编程UDP套接字编程TCP套接字编写 套接字编写注意事项 基础知识 IP地址:互联网协议地址(Internet Protocol Address),分配给互联网互联中设备的单一标识,理解成生活中的邮箱地址是比较类似的。…

mac pro 解决No module named ‘_lzma‘

问题描述: Traceback (most recent call last): File "/Users/liutiecheng/Tylers Job/finetuning/tiny/train.py", line 1, in <module> import datasets …… import lzma File "/Users/liutiecheng/.pyenv/versions/3.9.2/lib/python3.9/lzma.py&quo…

HubSpot企业商机管理和销售自动化:提升业务效率的利器

在当今数字化时代&#xff0c;企业出海已成为拓展市场、增加营收的重要途径。然而&#xff0c;如何高效地管理商机和实现销售自动化&#xff0c;成为许多企业面临的挑战。HubSpot作为一款强大的营销、销售和服务自动化平台&#xff0c;为企业提供了全方位的解决方案。今天运营坛…

图解 BERT 模型

节前&#xff0c;我们星球组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、参加社招和校招面试的同学. 针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 汇总合集&…

busco,checkM2,checkM:基因组或MAG完整度分析

busco安装&#xff08;应该是一般用于真核生物&#xff09; mamba create -n BUSCO biopython1.79 conda activate BUSCO mamba install -c bioconda python3.8 sepp4.3.10 mamba install -c bioconda busco5.7.1 busco 使用 #下载数据库&#xff08;2024-01-08&#xff09…

【Docker】docker-compose 常用命令

启动服务&#xff1a; docker-compose up 如果你想在后台运行服务&#xff0c;可以添加 -d 标志&#xff1a; docker-compose up -d 开启所有服务 docker-compose start 停止服务&#xff1a; docker-compose down 查看服务状态&#xff1a; docker-compose ps 查看…

5-21作业

流式域套接字 服务器端实现 #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <pthread.h> #include <semaphore.h> #include <…

Host头攻击

Host头攻击&#xff08;也被称为HTTP Host头注入攻击&#xff09;是一种Web安全漏洞&#xff0c;攻击者通过篡改HTTP请求中的Host头部字段来执行恶意操作。在HTTP协议中&#xff0c;Host头部字段用于指定请求所针对的域名&#xff0c;以便服务器能够正确地将请求路由到相应的We…

【MiniCPM-V】win10本地部署OCR等性能测试

性能尝试 本地配置如下 --------------------------------------------------------------------------------------- | NVIDIA-SMI 546.80 Driver Version: 546.80 CUDA Version: 12.3 | |-----------------------------------------------------…

QQ名片满级会员装x助手HTML源码

源码介绍 QQ名片满级会员展示生成HTML源码&#xff0c;源码由HTMLCSSJS组成&#xff0c;双击html文件可以本地运行效果&#xff0c;也可以上传到服务器里面&#xff0c;保存素材去选择QQ个性名片-选择大图模板-把图上传照片墙即可 源码效果 源码下载 蓝奏云&#xff1a;http…

第18章-综合以上功能 基于stm32的智能小车(远程控制、避障、循迹) 基于stm32f103c8t6/HAL库/CubeMX/超详细,包含代码讲解和原理图

这个是全网最详细的STM32项目教学视频。 第一篇在这里: 视频在这里 STM32智能小车V3-STM32入门教程-openmv与STM32循迹小车-stm32f103c8t6-电赛 嵌入式学习 PID控制算法 编码器电机 跟随 第18章-综合以上功能 18-按键和app按钮切换功能 根据上面介绍&#xff0c;我们的模式可…

城市空气质量数据爬取分析可视化

城市空气质量数据爬取分析可视化 一、效果展示二、完整代码2.1 数据爬取代码2.2 数据分析代码一、效果展示 先来看一下数据情况以及可视化效果,本项目使用了pyecharts绘制了日历图、雷达图、折线图、柱状图、饼图和平行坐标系。完整代码附后: 数据如下: 日历图: 饼图: …

Nose,一款多功能灵活测试的Pythonl库

Nose库概述 Nose是一个用于Python单元测试的第三方库,旨在简化和扩展Python自带的unittest框架.它提供了更多功能和灵活性,使得编写和运行单元测试变得更加方便. 安装与使用 #首先安装Nose库:pip install nose使用 nose 运行单元测试的简单示例&#xff1a; 运行测试: imp…

Go源码--sync库(1)

简介 这篇主要介绍 sync.Once、sync.WaitGroup和sync.Mutex sync.Once once 顾名思义 只执行一次 废话不说 我们看源码 英文介绍直接略过了 感兴趣的建议读一读 获益匪浅 其结构体如下 Once 是一个严格只执行一次的object type Once struct {// 建议看下源码的注解&#xf…