tomcat启动参数
JAVA_OPTS="$JAVA_OPTS -Xms2048M -Xmx2048M -XX:PermSize=256M -XX:MaxPermSize=512m -XX:NewRatio=2 -XX:SurvivorRatio=4 -XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=4 -XX:+PrintTenuringDistribution -XX:+PrintGCDetails -XX:+PrintGCDateStamps -verbose:gc"
这是系统运行期间的状况:
11:50
[root@i bin]# jstat -gcutil 19828 1000 10
S0 S1 E O P YGC YGCT FGC FGCT GCT
54.88 0.00 25.32 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 25.91 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 28.64 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 30.66 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 34.64 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 35.45 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 39.72 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 54.05 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 56.24 92.17 25.69 164 7.748 6 7.761 15.509
54.88 0.00 59.56 92.17 25.69 164 7.748 6 7.761 15.509
13:43
[root@inne bin]# jstat -gcutil 19828 1000 10
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 80.97 19.38 84.34 26.60 531 23.331 27 46.521 69.852
0.00 80.97 49.03 84.34 26.60 531 23.331 27 46.521 69.852
0.00 80.97 86.81 84.34 26.60 531 23.331 27 46.521 69.852
0.00 80.97 93.61 84.34 26.60 531 23.331 27 46.521 69.852
41.76 0.00 0.00 90.92 26.60 532 23.392 28 46.521 69.913
41.76 0.00 0.00 90.92 26.60 532 23.392 28 46.521 69.913
0.00 0.00 4.18 47.91 26.60 532 23.392 28 49.006 72.398
0.00 0.00 50.76 47.91 26.60 532 23.392 28 49.006 72.398
0.00 0.00 62.36 47.91 26.60 532 23.392 28 49.006 72.398
0.00 0.00 83.32 47.91 26.60 532 23.392 28 49.006 72.398
14:10
[root@i bin]# jstat -gcutil 19828 1000 10
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 41.65 91.54 80.68 26.62 789 34.325 48 99.145 133.469
84.63 0.00 6.79 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 11.07 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 22.49 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 32.80 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 44.76 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 56.54 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 60.85 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 82.70 80.68 26.62 790 34.356 48 99.145 133.501
84.63 0.00 88.33 80.68 26.62 790 34.356 48 99.145 133.501
15:50
[root@i bin]# jstat -gcutil 19828 1000 10
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 41.23 65.36 80.46 26.68 2131 95.954 240 709.705 805.659
0.00 41.23 89.96 80.46 26.68 2131 95.954 240 709.705 805.659
44.20 0.00 12.90 83.80 26.68 2132 95.994 240 709.705 805.700
44.20 0.00 38.60 83.80 26.68 2132 95.994 240 709.705 805.700
44.20 0.00 62.87 83.80 26.68 2132 95.994 240 709.705 805.700
44.20 0.00 74.37 83.80 26.68 2132 95.994 240 709.705 805.700
44.20 0.00 93.35 83.80 26.68 2132 95.994 240 709.705 805.700
44.20 0.00 99.54 83.80 26.68 2132 95.994 240 709.705 805.700
0.00 39.11 16.44 87.43 26.68 2133 96.037 240 709.705 805.742
0.00 39.11 21.66 87.43 26.68 2133 96.037 240 709.705 805.742
16:50
[root@i bin]# jstat -gcutil 19828 1000 10
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 0.00 67.39 87.11 26.71 2931 133.741 443 1469.811 1603.552
0.00 0.00 95.94 87.11 26.71 2931 133.741 443 1469.811 1603.552
44.38 0.00 56.50 87.11 26.71 2932 133.763 443 1469.811 1603.574
44.38 0.00 87.88 87.11 26.71 2932 133.763 443 1469.811 1603.574
0.00 46.87 12.65 90.74 26.71 2933 133.805 443 1469.811 1603.616
0.00 46.87 46.52 90.74 26.71 2933 133.805 443 1469.811 1603.616
0.00 46.87 69.29 90.74 26.71 2933 133.805 443 1469.811 1603.616
0.00 46.87 78.46 90.74 26.71 2933 133.805 443 1469.811 1603.616
41.85 0.00 0.00 94.55 26.71 2934 133.848 444 1469.811 1603.659
41.85 0.00 0.00 94.55 26.71 2934 133.848 444 1469.811 1603.659
19:30
[root@i5 bin]# jstat -gcutil 19828 1000 10
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 0.00 100.00 100.00 26.73 3393 153.184 1810 6795.881 6949.065
0.00 0.00 100.00 100.00 26.73 3393 153.184 1810 6795.881 6949.065
0.00 0.00 100.00 100.00 26.73 3393 153.184 1811 6799.966 6953.150
0.00 0.00 100.00 100.00 26.73 3393 153.184 1811 6799.966 6953.150
0.00 0.00 100.00 100.00 26.73 3393 153.184 1811 6799.966 6953.150
0.00 0.00 100.00 100.00 26.73 3393 153.184 1811 6799.966 6953.150
0.00 0.00 35.06 100.00 26.73 3393 153.184 1811 6804.075 6957.259
0.00 0.00 90.24 100.00 26.73 3393 153.184 1811 6804.075 6957.259
0.00 0.00 100.00 100.00 26.73 3393 153.184 1812 6804.075 6957.259
0.00 0.00 100.00 100.00 26.73 3393 153.184 1812 6804.075 6957.259
2013-04-07T19:30:49.767+0800: [Full GC [PSYoungGen: 466048K->0K(582528K)] [PSOldGen: 1398143K->1350782K(1398144K)] 1864191K->1350782K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 3.9798680 secs] [Times: user=3.98 sys=0.00, real=3.98 secs]
2013-04-07T19:30:54.929+0800: [Full GC [PSYoungGen: 466048K->4015K(582528K)] [PSOldGen: 1350782K->1398143K(1398144K)] 1816830K->1402159K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 3.4515900 secs] [Times: user=3.45 sys=0.00, real=3.46 secs]
2013-04-07T19:30:59.182+0800: [Full GC [PSYoungGen: 466048K->47831K(582528K)] [PSOldGen: 1398143K->1398143K(1398144K)] 1864191K->1445975K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 4.0846450 secs] [Times: user=4.08 sys=0.00, real=4.08 secs]
2013-04-07T19:31:03.937+0800: [Full GC [PSYoungGen: 466048K->63548K(582528K)] [PSOldGen: 1398143K->1398143K(1398144K)] 1864191K->1461692K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 4.1092990 secs] [Times: user=4.11 sys=0.00, real=4.11 secs]
2013-04-07T19:31:09.580+0800: [Full GC [PSYoungGen: 466048K->0K(582528K)] [PSOldGen: 1398143K->1372394K(1398144K)] 1864191K->1372394K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 4.5120020 secs] [Times: user=4.51 sys=0.00, real=4.52 secs]
2013-04-07T19:31:15.372+0800: [Full GC [PSYoungGen: 466048K->24777K(582528K)] [PSOldGen: 1372394K->1398144K(1398144K)] 1838442K->1422921K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 3.5419050 secs] [Times: user=3.54 sys=0.00, real=3.54 secs]
2013-04-07T19:31:19.949+0800: [Full GC [PSYoungGen: 466048K->70668K(582528K)] [PSOldGen: 1398144K->1398144K(1398144K)] 1864192K->1468812K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 4.1386670 secs] [Times: user=4.14 sys=0.00, real=4.14 secs]
2013-04-07T19:31:25.469+0800: [Full GC [PSYoungGen: 466048K->66226K(582528K)] [PSOldGen: 1398144K->1398143K(1398144K)] 1864192K->1464370K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 4.1236220 secs] [Times: user=4.12 sys=0.00, real=4.12 secs]
2013-04-07T19:31:30.717+0800: [Full GC [PSYoungGen: 466048K->10558K(582528K)] [PSOldGen: 1398143K->1398143K(1398144K)] 1864191K->1408702K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 4.5266600 secs] [Times: user=4.52 sys=0.00, real=4.52 secs]
2013-04-07T19:31:36.785+0800: [Full GC [PSYoungGen: 466048K->85887K(582528K)] [PSOldGen: 1398143K->1398143K(1398144K)] 1864191K->1484031K(1980672K) [PSPermGen: 70069K->70069K(262144K)], 3.5358120 secs] [Times: user=3.52 sys=0.00, real=3.54 secs]
到这个时间之后已经能看到明显不对了,系统此时频繁的Full GC(大概5~6秒),Perm区一直都比较稳定,Elen和Old一直100%,Survivor区一直都是0了,看到网上有说是因为程序错误的,有没有人遇到过这种问题,以及是什么样的程序错误或导致这样呢?
相关推荐
AviatorEvaluator执行脚本导致Metaspace不足引发频繁 Full GC故障机经过 故障机经过 数据分析&特征平台DMP 最近频繁发生Full GC, 引发集群卡顿,导致经常超时,按照常规的方法,肯定是先看GC 日志 2020-02-17T10:17:...
然而,当GC运行频繁或出现长时间的Full GC时,可能会导致应用程序性能下降,甚至出现暂停现象。这时,我们需要对GC日志进行深入分析,以优化程序性能。GCViewer就是这样一款强大的工具,它专门用于可视化分析Java...
首先,我们关注"元空间不足导致频繁FullGC.pdf"这个文件。元空间是Java 8引入的新特性,取代了之前的永久代(Permanent Generation)。元空间主要存储类的元数据,如类信息、方法信息、字段信息等。当元空间满时,...
在Java开发中,JVM(Java虚拟机)的性能优化是一项关键任务,特别是对于大型系统而言,频繁的Full GC(垃圾收集)会导致应用暂停时间过长,影响用户体验。本资料"jvm-full-gc调优-jvm-full-gc.zip"显然是针对如何...
因此,出现 Full GC 问题时,需要快速定位问题原因以避免对系统性能的影响。 在本篇文章中,我们将分享一个 Full GC 问题排查过程,通过示例代码和实际操作,介绍了如何快速定位 Full GC 问题的原因和解决方案。 ...
Full GC频繁执行会导致系统暂停时间变长,甚至可能导致应用卡顿。因此,我们需要通过以下策略进行调优: 1. 适当增大堆内存:增加堆大小可以减少Full GC的发生频率。 2. 调整新生代与老年代的比例:通过-Xmn、-XX:...
如果`Full GC`过于频繁,可能是老年代空间不足,或者存活对象过多导致。可以通过调整`-Xms`和`-Xmx`(初始堆大小和最大堆大小),或者使用合适的垃圾收集器(如G1或ZGC)来改善。 `Young GC`主要处理年轻代中的对象...
- **性能优化**:解决了系统频繁Full GC、数据库死锁等问题,提升了服务稳定性。 - **商用环境构建**:完成了服务的商用环境构建、部署、上线全流程,提高了开发效率和服务质量。 #### 企业级开发框架 - **代码...
通过具体案例,如系统频繁FullGC、String.intern的使用等,可以更加深入理解JVM的运行机制和性能调优方法。 #### 结语 以上是对《JVM必知必会》中涉及的核心知识点的详细梳理。这些内容可以作为学习Java虚拟机的...
1. **性能调优**:当应用出现性能下降或频繁Full GC时,通过GCViewer分析GC日志,找出原因并优化。 2. **内存泄漏检测**:长时间运行的应用如果内存持续增长,可能有内存泄漏,GCViewer能辅助定位问题。 3. **JVM...
年轻代GC主要处理新生代的对象,而Full GC则涉及到整个堆,包括年轻代和老年代,它的执行通常会导致较高的系统负载,并可能导致应用程序暂停,甚至在频繁触发时造成服务中断或系统崩溃。 为了确保应用的稳定性和...
线上系统频繁出现Full GC的现象通常表现为机器CPU负载过高和频繁的Full GC报警。Full GC是JVM中最耗时的操作,可能导致系统响应变慢甚至服务中断。其常见原因包括: 1. 对象频繁进入老年代,频繁触发Full GC。 2. 高...
Full GC开销大,应尽量避免频繁触发。 3. 垃圾收集器 - Serial GC:单线程的垃圾收集器,适合小型应用。 - Parallel GC:多线程版本的Serial GC,提高了吞吐量。 - CMS(Concurrent Mark Sweep)GC:并行标记,...
使用`GCHisto_Tool`,我们可以分析这些数据,找出可能存在的性能瓶颈,比如频繁的Full GC或过长的GC暂停时间。这些信息有助于调整JVM的内存设置,例如增大新生代大小、调整垃圾收集器策略,或者优化对象分配以减少...
对于某些动态加载类的应用程序来说,适当增大持久代可以避免频繁的Full GC。 #### 四、GC类型及其触发条件 1. **Scavenge GC**:主要针对年轻代进行的局部GC操作,当Eden区空间不足时触发,目的是清理不再使用的...
GCViewer的核心功能在于将Java虚拟机(JVM)的GC日志转化为直观的图表,帮助开发者识别出可能存在的性能瓶颈,比如频繁的Full GC、长时间的GC暂停时间等。这些信息对于优化应用程序的性能、减少响应延迟以及提高系统...
比如,如果发现Full GC过于频繁,可能意味着老年代内存不足,需要调整JVM内存设置;如果暂停时间过长,可能需要优化垃圾回收策略,减少应用响应延迟。 总的来说,GC日志分析和GCViewer工具的使用是Java性能调优的...
- **Full GC频率**:过多的Full GC会导致应用暂停时间过长,影响性能。 - **内存分配速度**:如果内存分配速度快于GC回收速度,可能导致频繁的GC。 - **内存使用情况**:关注每个区域的内存使用,避免溢出。 - **...
poi读取大量数据会造成gc内存溢出的报错,由于垃圾回收机制无法将大量的对象及时的回收,而这些对象又会保存在内存中,会导致内存不够用的情况,这时候我们就需要使用新的方法,读取为cvs即可.此解决方案可支持千万数据的...
过大或过小的堆可能导致GC频繁运行或运行时间过长,影响应用性能。年轻代比例过大可能会导致不必要的Minor GC,而过小则可能导致对象过早晋升到旧域,增加Full GC的压力。 总结来说,理解JVM堆的结构和GC的工作机制...