首页 > 其他分享 >JVM 调优和深入了解

JVM 调优和深入了解

时间:2024-06-15 14:44:01浏览次数:10  
标签:10 Full 调优 GC JVM 深入 Minor

调优的原则
1、 大多数的 java 应用不需要 GC 调优
2、 大部分需要 GC 调优的的,不是参数问题,是代码问题
3、 在实际使用中,分析 GC 情况优化代码比优化 GC 参数要多得多;
4、 GC 调优是最后的手

目的
GC 的时间够小
GC 的次数够少
发生 Full GC 的周期足够的长,时间合理,最好是不发生。
注:如果满足下面的指标,则一般不需要进行 GC:
Minor GC 执行时间不到 50ms;
Minor GC 执行不频繁,约 10 秒一次
Full GC 执行时间不到 1s;
Full GC 执行频率不算频繁,不低于 10 分钟 1 次;

GC 调优
调优步骤
日志分析
阅读 GC 日志

标签:10,Full,调优,GC,JVM,深入,Minor
From: https://www.cnblogs.com/velloLei/p/18249276

相关文章

  • JVM之编写高效优雅 Java 程序
    面向对象01、构造器参数太多怎么办?如果参数很多,会导致构造方法非常多,拓展性差,代码难编写,且难以看懂。用JavaBeans模式,get和set一行构造编程多行代码实现,需要使用额外机制确保一致性和线程安全。用builder模式,1、5个或者5个以上的成员变量2、参数不多,但是在未来,......
  • JVM类加载机制
    类加载机制概述类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中验证、准备、解析3个部分统称为连接(Link)。初始化的单例......
  • jvm调优工具和调优策略
    JDK为我们提供的jvm工具命令行工具jps、jstat、jinfo、jmap、jhat、jstack可视化工具JMX、Jconsole、visualvm生产服务器推荐开启-XX:-HeapDumpOnOutOfMemoryError默认关闭,建议开启,在java.lang.OutOfMemoryError异常出现时,输出一个dump.core文件,记录当时的堆内存快......
  • 深入解析 Cognex VisionPro 的 CogAcqFifoTool
    深入解析CognexVisionPro的CogAcqFifoTool在现代工业自动化和机器视觉领域,图像获取是实现各种视觉检测、识别和分析的第一步。而CognexVisionPro提供了一系列强大的工具,其中CogAcqFifoTool是专门用于图像获取的重要工具。本文将深入解析CogAcqFifoTool,帮助您了解其功......
  • JVM垃圾回收算法和垃圾回收器
    垃圾回收算法复制算法(Copying)将可用内存按容量划分为大小相等的两块,每次只使用其中的一块。当这一块的内存用完了,就将还存活着的对象复制到另外一块上面,然后再把已使用过的内存空间一次清理掉。这样使得每次都是对整个半区进行内存回收,内存分配时也就不用考虑内存碎片等复杂情......
  • JVM中的对象
    虚拟机中的对象对象的分配虚拟机遇到一条new指令时:根据new的参数是否能在常量池中定位到一个类的符号引用,如果没有,说明还未定义该类,抛出ClassNotFoundException1)检查加载先执行相应的类加载过程。如果没有,则进行类加载2)分配内存根据方法区的信息确定为该类分配的内存空......
  • JVM垃圾回收策略机制和算法
    判断对象的存活引用计数法给对象添加一个引用计数器,当对象增加一个引用时计数器加1,引用失效时计数器减1。引用计数为0的对象可被回收。(Python在用,但主流虚拟机没有使用)优点:快,方便,实现简单。缺陷:对象相互引用时(A.instance=B同时B.instance=A),很难判断对象是否该回收。......
  • 深入探索Spring Boot的条件装配与条件注解
    SpringBoot的条件装配(Conditional装配)是一个强大的功能,它允许你根据特定的条件来决定哪些配置类、beans或组件应该被加载到Spring应用上下文中。这有助于创建更灵活、更模块化的SpringBoot应用程序。在SpringBoot中,条件装配主要通过@Conditional注解及其派生注解(如@Co......
  • MySQL的高可用方案:深入Galera Cluster和ProxySQL
    一、引言1.1背景和重要性 随着互联网的发展与普及,数据库作为后端存储的重要组件,其稳定性、可用性和性能直接影响到一个系统的正常运行。特别是在高并发、大数据的现今环境下,一款高性能、高可用率的数据库系统更是大大提升了业务的效率和保障。 MySQL是一款广受欢......
  • JVM运行时数据区(线程相关)
    一、JVM运行时数据区JVM运行时数据区是一个抽象概念,主要依赖于寄存器、高速缓存、主内存几个部分组成。计算机运行=指令+数据,指令用于执行方法,数据用于指向存放的数据和对象。虚拟机栈---用于执行java方法本地方法栈---执行本地方法(通常时c语言实现的)程序计数......