JVM知识总结(性能调优)

news2024/11/28 8:36:41

文章收录在网站:http://hardyfish.top/

文章收录在网站:http://hardyfish.top/

文章收录在网站:http://hardyfish.top/

文章收录在网站:http://hardyfish.top/

在这里插入图片描述

性能调优

何时进行JVM调优?

遇到以下情况,就需要考虑进行JVM调优了:

  • Heap内存(老年代)持续上涨达到设置的最大内存值
  • Full GC 次数频繁
  • GC 停顿时间过长(超过1秒)
  • 应用出现OutOfMemory等内存异常
  • 系统吞吐量与响应性能不高或下降

JVM调优基本原则:

大多数的Java应用不需要进行JVM优化

大多数导致GC问题的原因是代码层面的问题导致的(代码层面)

上线之前,应先考虑将机器的JVM参数设置到最优

减少创建对象的数量(代码层面)

减少使用全局变量和大对象(代码层面)

优先架构调优和代码调优,JVM优化是不得已的手段(代码、架构层面)

分析GC情况优化代码比优化JVM参数更好(代码层面)

JVM调优目标:

延迟:

  • GC低停顿和GC低频率

没有FullGC

高吞吐量

JVM调优步骤:

一般情况下,JVM调优可通过以下步骤进行:

  • 分析GC日志及Dump文件,判断是否需要优化,确定瓶颈问题点
  • 确定JVM调优量化目标
  • 确定JVM调优参数(根据历史JVM参数来调整)
  • 依次调优内存、延迟、吞吐量等指标
  • 对比观察调优前后的差异
  • 不断的分析和调整,直到找到合适的JVM参数配置
  • 找到最合适的参数,将这些参数应用到所有服务器,并进行后续跟踪

JVM调优建议

年轻代和老年代的比例需要结合实际场景调整

  • 由于老年代的GC成本通常都会比年轻代的成本要高许多。
  • 所以建议适当地通过Xmn命令区设置年轻代的大小,最大限度的降低对象晋升到老年代的情况。

合理设置Eden区和Survivor区比例

  • 合理分配Eden区和Survivor区,尽量不要让对象进入老年代。

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

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

相关文章

初识C++ · 智能指针

目录 前言: 1 智能指针的发展历史 2 unique_ptr和shared_ptr的基本使用 3 shared_ptr的模拟实现 4 有关定制删除器 前言: 智能指针的引入,我们得先从异常开始说起,异常面临的一个窘境是new了多个对象,抛异常了会…

centos7简介和安装步骤

目录 centos简介 1.CentOS 7 简略简介 2.使用建议 vmware搭建centos7 1.centos镜像下载 2.虚拟机创建 2.1 新建虚拟机 2.2典型 2.3操作系统 2.4客户机操作系统选择 ​编辑 2.5虚拟机命名与位置安装 2.5磁盘容量 2.6完成 2.6编辑虚拟机 2.6.1内存大小编辑 2.6.…

React+vite+antd点击路由切换时出现闪屏

问题描述:点击左侧路由切换会出现闪屏的情况 页面的效果 解决方案 完整代码 import { lazy, Suspense, ReactNode } from "react"; import { Navigate, useLocation } from "react-router-dom"; import LayOut from ../pages/LayOut/LayOut import NotFo…

过滤了字母、数字、_、$的webshell命令执行技巧

目录 对于php5以上首先要解决的问题有 解决技巧 1.code长度小于35位 2.没有字母、数字、_ 、$ 3.怎么把文件放进服务器 4.怎么执行文件里面的内容 1.执行Linux命令 2.执行文件里面的shell命令 5.构造完整的code参数 6.我们还可以通过修改文件里面shell命令,…

学习记录703@计算机组成原理之原码、补码、反码、移码

数据表示基本概念 数据表示分为有符号数和无符号数,其中有符号数分为整数、纯小数、带小数;整数和纯小数小数点位置固定,统称为定点数;带小数小数点位置可以浮动,称为为浮点数,浮点数阶码就是整数部分&…

忘记iPhone锁屏密码,多次输出密码导致iPhone停用了怎么解锁?

iphone已停用怎么解锁?当因忘记iPhone锁屏密码,多次输入错误密码而被停用时,怎么解锁恢复对设备的访问是非常重要的。下面小编将给大家介绍几种解锁已停用iPhone的方法,一起来看看吧! 一、使用恢复模式解锁 将iPhone连…

知识学习技巧:如何从 iPhone 恢复误操作删除的视频

您来这里主要是因为您想知道如何从 iPhone 恢复已删除的视频。实际上,如果视频是用 iPhone 拍摄的,您可以尝试在相册“最近删除”中找到它们。删除后它将保留 40 天。如果您清空了相册或无法从相册中找到已删除的视频,那么您必须尝试使用奇客…

系统管理篇

系统管理 一、网络管理1. 网络状态查看2. 网络和路由配置3. 网络故障排除4. 网络服务管理 二、软件管理1. 软件包管理器2. rpm包和rpm命令3. yum仓库4. 源代码编译安装5. 内核升级6. grub配置文件 三、进程管理1. 进程的概念与进程查看2. 进程的控制命令3. 进程的通信方式--信号…

Linux内核中的eMMC存储支持详解

一、eMMC概述 eMMC(Embedded MultiMediaCard)是一种嵌入式多媒体卡,是一种基于NAND Flash的闪存卡标准,由JEDEC(电子设备工程联合委员会)订立和发布。eMMC集成了NAND Flash、闪存控制器和eMMC协议接口&…

【npm】如何将开发的vite插件发布到npm

前言 简单说下 npm 是什么: npm 是一个 node 模块管理工具,也是全球最大的共享源。 npm 工具与 nodejs 配套发布,便利开发人员共享代码。npm 主要包括 npm 官方网站、CLI(控制台命令行工具)、和 registry(…

系统架构设计定义

系统架构设计是软件开发和信息系统构建中至关重要的一环,它涉及到系统的整体结构、模块划分、接口定义以及设计原则等多个方面。以下是对系统架构设计的详细阐述: 一、系统架构设计的定义 系统架构设计是指对系统的整体结构、模块关系、接口定义以及交互…

IDEA2023版本创建mavenWeb项目及maven的相关配置

在使用idea创建maven项目之前,首先要确保本地已经下载并配置好maven的环境变量,可以参考我主页的maven下载及环境变量配置篇。 接下来首先介绍我们需要对maven安装目录文件进行的修改介绍。 maven功能配置 我们需要需改 maven/conf/settings.xml 配置…

数字孪生水利“天空地水工”一体化监测感知行动方案的框架及目标

监测感知数据是构建数字孪生水利体系的前提和基础。,推进物理流域监测系统科学建设和高频乃至在线运行,提升水利对象全要素和治理管理全过程智能监测感知能力,为数字孪生水利的高保真建设运行提供有力算据保障,支撑构建具有“四预…

博客系统测试用例报告

一、项目背景 ⼀款基于SpringBoot实现的简易⽹站,功能有⽤⼾注册及登录,博客列表展⽰,博客详情查看,博客编写和⽂章评论 点赞功能采⽤的技术有:HTML、CSS、Mybatis、Token、Ajax等技术。 二、项目功能 1.注册 进入…

仓颉编程入门 -- 泛型概述 , 如何定义泛型函数

泛型概述 , 如何定义泛型函数 1 . 泛型的定义 在仓颉编程语言中,泛型指的是参数化类型,参数化类型是一个在声明时未知并且需要在使用时指定的类型。类型声明与函数声明可以是泛型的。最为常见的例子就是 Array、Set 等容器类型。以数组类型为例&#xf…

inscode的会员计划的python环境问题【版本3.9.16】无法升级python

购买了inscode的会员计划后,部署python项目 遇到python环境无法升级的问题 inscode的会员计划的环境是3.9.16,但是项目用的例子需要3.10以上的版本,最终本人也无法完全解决,虽然手动安装了python3.10,一切都可以实现,但是最后环境自动恢复到3.9版本,导致自己手动配置的全…

速成cesium而忽略前端基础,你可能会遇到这些坑!

cesium作为一个功能强大的开源三维地球框架,做出来的效果受到众多企业的青睐。然而,许多小伙伴们都 希望能够快速掌握cesium,从而忽略了前端基础知识的重要性。这种急功近利的学习方式往往会导致一些不良后果: 1. 前端基础太薄弱…

【leetcode】找出与数组相加的整数II( 过程反思 思路详解 )

题目分析: 题目要咱们除掉nums1中的两个数,从另一个角度理解就是找到nums1中与nums2元素匹配的nums1.size() - 2个数 由题目可知,二者元素具有相差 x 的一一对应关系,如此,不难想到应首先通过对二者排序来构建大致的匹…

用Python制作开心消消乐游戏|附源码

制作一个完整的“开心消消乐”风格的游戏在Python中是一个相对复杂的项目,因为它涉及到图形界面、游戏逻辑、动画效果以及用户交互等多个方面。不过,我可以为你提供一个简化的版本和概念框架,帮助你理解如何开始这个项目,并提供一…

仪表板展示|DataEase看中国:2024巴黎奥运会中国体育代表团战绩报告

背景介绍 北京时间2024年8月12日凌晨,巴黎奥运会闭幕。在本届奥运会中,我们不仅见证了许多新世界纪录的诞生,更看到了中国体育的强大实力与无限潜力。中国运动健儿们卓越的表现和顽强的拼搏精神,不但让国人为之自豪,也…