用Arthas快速定位线上JVM问题!

Arthas分析FullGC问题定位

       对于FullGC那一定不会陌生,一般来说会采用横切FullGC前置拦截(-XX:+HeapDumpBeforeFullGC)和后置拦截(-XX:+HeapDumpAfterFullGC),导出FullGC发生前后的heap dump文件,以便于我们进行FullGC原因的分析和定位。

推测分析问题之FullGC的频率过高

       我们如果希望可以观测到相关的GC回收次数以及相关的时间,除Java原生的jstat指令之外,还可以通过dashboard看板中的GC子面板(整体部分的右下角)部分,如下图1所示。

        我们通过分析以及观察到相关的FullGC频率过高,所以可以针对性的获取相关的FullGC前后n(3~5)组的heap dump文件。分析每次FullGC前后的对象数量和空间的较为靠前的对象信息,从而得到综合评判得出FullGC过于频繁结论,分析的要点:

l分析其创建的数量过程为什么过多,以及占用内存剧增的原因。

l分析其创建的数量的内存空间为什么会生命周期过长会迁移到老年代。

l是否存在担保分配机制导致直接在老年代分配,以及对象大小是否过大,导致动态年龄跃升。

l是否提前进入老年代的门槛过低(XX:PretentureSizeThreshold ),导致跃升。

l是否是内存分配

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

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

相关文章

Kubernetes基础知识点

k8s可以看做是一个集群操作系统,能够对容器进行调度和编排。 Kubernetes中的基本对象 pod 是k8s中的最小单位,一个pod封装一个或者多个容器,存储资源。 deployment 是对pod的服务化封装,可以包含一个或多个pod statefulset 为…

【面试题34】什么是MVC,为什么要使用它

文章目录 一、前言二、MVC介绍2.1 模型(Model)2.2 视图(View)2.3 控制器(Controller) 三、MVC模式的优点四、总结 一、前言 本文已收录于PHP全栈系列专栏:PHP面试专区。 计划将全覆盖PHP开发领域…

opencv4.7.0编译opencv-contrib-4.7.0以及CUDA

0、引言 最近工作中需要用到使用CUDA加速后的opencv进行传统算法的开发,在编程之前,需要先解决环境编译和lib库问题,本文就是记录自己编译opencv-4.7.0的全过程。 1、CUDA下载和安装 可参考我之前的博客WIN10安装配置TensorRT详解中的前几…

我爱学QT-QT信号和槽

1.给控件改名字 为了分析代码方便,我们要给控件改名字。要通俗易懂。 2.信号和槽 信号:信号就是指控件发出的特定的信号。 比如按钮的信号 槽:槽就是槽函数的意思,我们可以把槽函数绑定在某一个控件的信号上。 3.怎么关联信号…

【无公网IP端口映射】远程访问本地jupyter notebook服务

文章目录 前言1. Python环境安装2. Jupyter 安装3. 启动Jupyter Notebook4. 远程访问4.1 安装配置cpolar内网穿透4.2 创建隧道映射本地端口 5. 固定公网地址 前言 Jupyter Notebook,它是一个交互式的数据科学和计算环境,支持多种编程语言,如…

学无止境·MySQL⑦(索引和视图)

索引和视图练习 索引练习1、建立一个utf8编码的数据库test12、建立商品表goods和栏目表category3、删除 goods 表中的 goods_desc 字段及货号字段,并增加 click_count 字段4、在 goods_name 列上加唯一性索引(用alter table方式)5、在 shop_price 列上加…

云之道知识付费V2小程序V3.1.1独立平台版安装使用教程

据播播资源了解,云之道知识付费小程序是一款专注于知识付费的小程序源码,为内容创业者、自媒体和教育培训机构提供全方位的互联网解决方案。 由播播资源小编全套安装云之道知识付费V2独立版系统,系统支持无限多开,相比上几版出现…

Tenable Nessus 10.5.3 (Unix, Linux, Windows) - #1 漏洞评估解决方案

Tenable Nessus 10.5.3 (Unix, Linux, Windows) - #1 漏洞评估解决方案 发布 Nessus 试用版自动化安装程序,支持 macOS Ventura、RHEL 9 和 Ubuntu 22.04 请访问原文链接:https://sysin.org/blog/nessus-10/,查看最新版。原创作品&#xff…

typescript helloword

创建文件夹 创建ch01文件夹 新建tsconfig.json {"compilerOptions": {"strict": true,"target": "ES5"} }“tsconfig.json”是TypeScript编译器默认使⽤的配置⽂件。此例中的配置⽂件启⽤了所有的严格类型检查编译选项,…

小平板 大智慧-嵌入式方案满足教育市场多元需求

线上教育观念的深入和技术的更新,直接拉动了教育类硬件及相关终端设备的市场需求。 产品框图 IDO-SBC3566采用瑞芯微RK3566, CPU采用4核A55架构处理器,集成G52图形处理器,内置独立NPU,算力高达1Tops,可满足…

怎样优雅地增删查改(四):创建通用查询基类

文章目录 创建通用查询抽象层创建通用查询应用层基类创建通用查询控制器基类[可选]替换RESTfulApi扩展泛型参数服务的“渐进式”使用 上一章我们实现了Employee管理模块,Employee的增删改查是通过其应用服务类,继承自Abp.Application.Services.CrudAppSe…

C++—C++程序基础

文章目录 1 数据类型1.1 基本数据类型1.2 字面值常量1.3 左值和右值1.4 引用与指针 2 基本输入输出2.1 输出2.2 输入 3 函数3.1 内联函数3.2 函数的重载 1 数据类型 1.1 基本数据类型 在C中,除了C语言中的int,char,float,double…