JVM优化(OOM,内存溢出),查看线程快照,堆内存情况等问题

news2024/11/16 15:34:27

1:堆大小 = 新生代 + 老年代,新生代 ( Young ) 与老年代 ( Old ) 的比例的值为 1:2 ( 该值可以通过参数 –XX:NewRatio 来指定 )

在这里插入图片描述

2:-Xmn参数总是应当小于-Xmx参数,否则就会触发OOM错误

3:jvm优化与查看gc回收情况,gc.log在当前启动目录下

java -Xms512m -Xmx512m -Xmn64m -XX:+HeapDumpOnOutOfMemoryError  -XX:HeapDumpPath=G:\javaDemoProject\reTryDemo\poi\target\pp.dump -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:gc.log -jar poi.jar

3-1:不打印堆内存报错输出

java -Xms512m -Xmx512m -Xmn64m -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:gc.log -jar poi.jar

4:jvm优化一般默认就行

如果没有明确指定最大内存 (-Xmx) 参数,则Java虚拟机 (JVM) 的默认最大内存取决于操作系统的限制。通常,JVM默认将最大内存设置为物理内存的1/4或1/8
如果没有单独指定新生代内存 (-Xmn) 参数,则JVM默认将其设置为整个堆内存的1/3或1/4
请注意,这些值需要根据你的应用程序的具体需求进行调整。使用过大的内存可能导致性能问题或者系统资源不足,而过小的内存可能导致内存溢出错误。确保合理地设置这些参数以满足应用程序的需求

4:查看某个进程下面线程详细情况,H必须大写

top -H -p pid

4-1:例如查看java进行下面的线程情况

在这里插入图片描述

4-2:查看进行下面的线程快照

jstack pid > xxx.txt

4-3:查看进程堆内存情况或者线程堆内存情况

jmap -heap pid

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

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

相关文章

数据通信网络之OSPFv3基础

文章及资源归档至【AIShareLab】,回复 通信系统与网络 可获取。 文章目录 一、目的二、拓扑三、需求四、步骤 一、目的 掌握路由器的IPv6 基础配置。掌握OSPFv3(单区域)的基础配置。 二、拓扑 如图1 所示,三台路由器R1、R2 和R…

网络传输方式

1. 单播 1.1. 定义 单播是指一种向单个目标地址传送数据的方式,即单独的一对一通讯方式。 1.2. 可使用协议 UDP、TCP等协议 1.3. 常见的场景 发送电子邮件传输文件 2. 广播 2.1. 定义 一种向本地网络中所有设备发送数据的方式。 2.2. 常见的场景 电视和电…

仅做笔记用:Stable Diffusion 通过 ControlNet 扩展图片 / 扩图

发觉之前的 Outpainting 脚本效果仍旧不是很理想。这里又找了一下有没有效果更好的途径来扩图。于是就找到了通过 ControlNet 的方式来实现效果更好的扩图。这里临时记录一下在 Stable Diffusion 怎么使用 ControlNet 来扩展图片。 下载 control_v11p_sd15_inpaint_fp16.safet…

Sql注入详解(原理篇)

一、简介 SQL 注入漏洞非常复杂,区分各种数据库类型,提交方法,数据类型等注入,同样此类漏洞是WEB安全中严重的安全漏洞,学习如何利用,挖掘,修复也是很重要的 二、SQL注入原理 1、什么是SQL注…

嵌入式学习之链表

对于链表,要重点掌握链表和数组区别和实现,链表静态添加和动态遍历,链表中pointpoint-next,链表节点个数的查找,以及链表从指定节点后方插入新节点的知识。

Scrum敏捷开发流程及敏捷研发关键环节

Scrum是一个迭代式增量软件开发过程,是敏捷方法论中的重要框架之一。它通常用于敏捷软件开发,包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括Scrum主管(Scrum Master)、产品负责人(Product Owner&…

Mybatis -- 读取 DATE 类型字段时可能遇到的问题(夏令时问题)

在使用 MYBATIS 读取数据库字段的时候,我们一般需要为查询字段指定数据类型。特别是当我们使用 mybatis generator 去生成对应的接口代码时,会自动按照数据库字段类型生成响应映射规则的代码。   如下,左侧是 date 类型生成的字段映射规则&…

如何在Excel中创建VBA程序--基于Office 365版本

目录 一 VBA程序简介二 为何选择VBA程序1. 高效便捷2. 自定义程度高3. 兼容性好 三 如何创建VBA程序1. 插入VBA程序:2. 使用VBA程序: 四 VBA程序应用场景示例1. 数据处理与分析2. 自定义函数3. 数据验证 五 VBA程序的优缺点及未来发展优点缺点 了解如何在…

计算机网络第四章——网络层(下)

长相思兮长相忆,短相思兮无穷极 文章目录 RIP和OSPE在于使用的算法是不一样的,RIP使用的是距离向量,适用于比较小的网络,OSPE使用的是链路状态,适用于比较大的网络 每一个路由器都有一个路由表,路由表的表…

Kerberos 身份验证

简介 Kerberos 是一种由 MIT(麻省理工大学)提出的一种基于加密 Ticket 的身份认证协议。它旨在通过使用密钥加密技术为客户端/服务器应用程序提供强身份验证,用于验证用户或主机的标识。。 适用范围:Windows Server 2022、Window…

Go基础八股

【Go面试】Go slice深拷贝和浅拷贝_哔哩哔哩_bilibili 基础篇 1.Go方法值接收者和指针接收者的区别 简单言之就是是否会影响调用的结构体,方法接收者是指针会影响 2.返回局部变量的指针 一般来说,局部变量会在函数返回后被销毁,因此被返回…

【距离注意残差网络:超分】

DARN: Distance Attention Residual Network for Lightweight Remote-Sensing Image Superresolution (DARN:用于轻量级遥感图像超分辨率的距离注意残差网络) 单图像超分辨率技术在遥感领域的应用具有重要意义。尽管基于卷积神经网络&#…

Pycharm 安装第三方库numpy,显示超时?

一、配置终端Terminal中的镜像源 1.更改pip源,在终端输入如下命令 pip config set global.index-url https://pypi.tuna.tshua.edu.cn/simple2.在终端使用pip install 安装第三方库 例如: pip install numpy二、配置仓库镜像源 1.第一步: 2.第二步:输…

JVM-垃圾回收器详解、参数配置

相关概念 并行和并发 并行(Parallel) 指多条垃圾收集线程并行工作,但此时用户线程仍然处于等待状态。 并发(Concurrent) 指用户线程与垃圾收集线程同时执行(但不一定是并行的,可能会交替执行…

2023-9-11 高斯消元解异或线性方程组

题目链接&#xff1a;高斯消元解异或线性方程组 #include <iostream> #include <algorithm>using namespace std;const int N 110;int n; int a[N][N];int gauss() {int c, r;for(c r 0; c < n; c ){int t r;for(int i r; i < n; i )if(a[i][c]){t i;b…

文件上传漏洞~php

目录 上传文件一般过滤方式 客服端校验 服务端校验 黑白名单机制 常规文件上传漏洞绕过 客户端绕过 1.游览器禁用JavaScript 2.正常burp suite抓包改包 服务端绕过 1.Content-Type绕过 2.黑名单绕过 1&#xff09;命名规则绕过 2&#xff09;大小写绕过 3&#x…

香橙派使用外设驱动库wiringOP 配合时间函数来驱动测距模块

模块认识和硬件接线 回顾之前关于超声波测距模块的学习&#xff1a; 使用HC-SR04实现超声波测距_hcsr04测距范围_mjmmm的博客-CSDN博客 并再次回顾香橙派的物理引脚对应&#xff1a; 所以这里&#xff0c;将VCC接到 2&#xff0c;GND接到 9&#xff0c;Trig接到 16&#xff0…

Material Design系列探究之LinearLayoutCompat

谷歌Material Design推出了许多非常好用的控件&#xff0c;所以我决定写一个专题来讲述MaterialDesign&#xff0c;今天带来Material Design系列的第一弹 LinearLayoutCompat。 以前要在LinearLayout布局之间的子View之间添加分割线&#xff0c;还需要自己去自定义控件进行添加…

【C++】哈希——哈希的概念,应用以及闭散列和哈希桶的模拟实现

前言&#xff1a; 前面我们一同学习了二叉搜索树&#xff0c;以及特殊版本的平衡二叉搜索树&#xff0c;这些容器让我们查找数据的效率提高到了O(log^2 N)。虽然效率提高了很多&#xff0c;但是有没有一种理想的方法使得我们能提高到O(1)呢&#xff1f;其实在C语言数据结构中&a…

【面试题】前端开发中如何高效渲染大数据量?

前端面试题库 &#xff08;面试必备&#xff09; 推荐&#xff1a;★★★★★ 地址&#xff1a;前端面试题库 【国庆头像】- 国庆爱国 程序员头像&#xff01;总有一款适合你&#xff01; 在日常工作中&#xff0c;较少的能遇到一次性往页面中插入大量数据的场景…