总结JVM会出现各种错误
案例一
导致promotion failed的那个时刻似乎并没有进行MinorGC,而OldGen又没有到达我设置的80%,jvm参数如下:
-Xmx13000m -Xms13000m -Xmn7800m -Xss256k -XX:PermSize=64m
-XX:MaxPermSize=128m -XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC
-XX:+UseParNewGC -XX:SurvivorRatio=8 -XX:TargetSurvivorRatio=100
-XX:MaxTenuringThreshold=15 -XX:CMSInitiatingOccupancyFraction=80
-XX:SoftRefLRUPolicyMSPerMB=0 -XX:+UseCMSCompactAtFullCollection
-XX:CMSMaxAbortablePrecleanTime=30000
-XX:CMSScheduleRemarkEdenPenetration=1 -server -XX:+PrintGCDetails
-Xloggc:./log/gc.log
出现的原因即解决方案:
promotion failed就是minor gc进行的时候出现的
至于这个时候为什么产生了full gc,原因就是因为promotion failed了…
promotion failed的原因主要是旧生代装不下要晋升到old中的对象,建议调整下参数…把新生代放小点吧,或者把cms的触发比率降低点吧。
分享到:
相关推荐
在《JVM开发实战项目案例分析》中,我们主要探讨的是如何将Java虚拟机(JVM)技术应用于实际开发,并通过具体的项目案例进行深入解析。JVM是Java平台的核心组成部分,它负责运行Java应用程序,提供了跨平台的执行...
### JVM实战-JVM类加载机制案例分析 #### 实验背景与目标 本次实验的主要目的是深入理解Java虚拟机(JVM)中的类加载机制。通过实践操作,掌握类的加载、连接与初始化过程,了解不同类型的类加载器及其工作原理,...
文中还提供了一个性能问题的案例分析,展示了从症状到原因分析,再到JVM配置优化的完整过程。 性能问题的分析通常涉及监控结果的解读,例如内存溢出、CPU过高或响应时间过长等症状。通过监控工具收集数据,可以发现...
《JVM高级特性与最佳实践(第2版)》是一本深入探讨Java虚拟机(JVM)技术的书籍,其源代码提供了丰富的实践案例和示例,帮助读者更直观地理解JVM的工作原理和优化技巧。以下是根据书名和描述所涉及的一些关键知识点...
#### 三、JVM调优案例分析 JVM调优是指通过调整JVM的参数设置来优化应用程序性能的过程。常见的调优案例包括: 1. **减少Full GC的频率**: - 通过调整新生代和老年代的比例,减少Full GC的发生次数,因为Full GC...
本实践案例中,作者分别尝试了三种不同的垃圾回收(GC)策略:串行回收、并行回收和并发回收,并针对每种策略提供了具体的JVM参数配置。 一、串行垃圾回收 这是JVM的默认配置,主要适用于轻量级应用或低CPU核心数的...
- **编译触发条件**:如方法被调用次数达到阈值,或代码块执行时间过长等。 6. **线程并发与同步**: - **锁机制**:如synchronized、Lock接口,用于控制多线程访问共享资源。 - **并发工具类**:如...
JVM(Java Virtual Machine)是Java程序运行的基础,其性能优化对于系统的稳定性和效率至关重要。本文主要探讨了JVM性能优化的步骤和常见问题,特别是关于Full GC的问题及其调优策略。 首先,JVM性能优化的步骤包括...
频繁的Minor GC会导致应用暂停,而过早晋升到老年代则可能导致老年代过快填满,触发Full GC,这将对性能造成更大影响。通过监控GC日志,可以分析年轻代的利用率和晋升到老年代的对象数量,以此为依据进行调整。 ...
在《从 0 开始带你成为JVM实战高手》的学习过程中,你将逐步掌握这些核心知识点,并通过实际案例加深理解,最终成为一名熟练驾驭JVM的实战高手。这份资源可能包含详细的讲解文档、示例代码、实战项目和相关的工具...
#### 五、案例分析 1. **内存溢出问题**:通过监控工具发现内存使用异常增长,进一步定位到是由于大量临时对象未能被回收导致。解决方法是优化代码逻辑,减少临时对象的创建,并适当增加堆内存大小。 2. **长时间的...
Java虚拟机(JVM)是Java程序运行的基础,它是一个抽象的计算机系统,负责执行Java字节码...这份"JVM思维导图"应该涵盖了这些关键概念,配合"尚硅谷徐靖博电商实战.txt"的案例,可以提供一个全面而系统的JVM学习路径。
【标题】"JVM优化经验总结Java开发Java经验技巧共15页.p" 提供的信息表明,这是一份...这份文档可能会详细讲解上述知识点,并提供实战案例和最佳实践,帮助开发者在面对具体问题时有据可依,提高Java应用的运行效率。
我们可以通过添加参数来调整 GC 时间点,例如在 Old 区使用了 50% 的时候触发 GC。然而,实验后发现 GC 的频率有所增加,但是每次 GC 造成的成功率降低现象并没有减弱。 在调整对象在年轻代内存中驻留的时间时,...
- **创建heap dump**:当遇到`OutOfMemoryError`时,可以通过JVM参数配置让JVM生成heap dump文件,或者使用如VisualVM等工具手动触发。 - **打开HeapAnalyzer**:运行ha456.jar文件,启动HeapAnalyzer工具。 - **...
* GC 触发的场景 * GC Roots * JVM 参数配置 在服务器排查思路中,我们需要了解服务器的基本组件和命令,熟悉服务器的日常维护和故障排除方法,并能够根据实际情况选择合适的排查思路和命令来解决问题。
这个案例展示了在面对JVM堆溢出问题时,如何通过监控数据、分析JVM参数、理解垃圾回收机制以及使用工具进行诊断和定位问题。对于开发者来说,理解JVM行为,掌握故障排查技巧是确保应用稳定运行的关键。
本文将分享一个基于旧版环境(Dell E5410,Intel i3 CPU M 370,2GB内存,32位Windows XP,Java HotSpot Client VM,Eclipse 4.2.0)的JVM调优实战案例,尽管硬件和软件版本已过时,但调优的基本思路和方法仍然具有...