当前位置:首页 >> 家电
家电

如何让生产环境的JVM在OOM时备用dump内存快照

2025-10-25 12:18

假定告诉自己的系统设计OOM了,咋办?

解决OOM的初步思路

OOM意味著概述系统设计中会某区的某类过于多,塞满那个区,而且一定未能储存起来丢弃那些某类,终究才导致磁盘溢出。

就告告诉确实是什么某类过于多了终究导致OOM,就必须得有一份JVM引发OOM时的dump磁盘镜像。

OOM的时候自动dump

假定JVM引发OOM了,你明白JVM是基本上来不及处理然后忽然进程就没了吗?也就是JVM是看起来极其忽然的自己未能控制的就挂丢弃了吗?

不是的,JVM本身在引发OOM之前都都会尽可能的去开展GC腾出来一些磁盘紧致,如果GC后还是未能紧致,放不下某类, 才都会触发磁盘溢出。

所以JVM自己对OOM情况的引发是基本上有把控权的,他告诉什么时候都会触发OOM,也是他自己感觉到不行的时候才都会去触发。所以OOM的引发并不是大家想的那样,忽然彼此间磁盘过于多了,JVM自己都没反应过来就直接停滞了,并非如此。因此JVM如果告诉要引发OOM了,此时基本上可以让他做点不想。

可以让他在OOM时dump一份磁盘镜像,事后我们只要系统性这个磁盘镜像,一下就可以告诉是哪些可恶的某类占用了所有的磁盘,并且还未能拘禁。

此时你就只能在JVM的启动值中会转至如下的一些值:

# OOM的时候自动dump磁盘镜像出来 -XX:+HeapDumpOnOutOfMemoryError # 把磁盘镜像放到哪儿去 -XX:HeapDumpPath=/usr/local/app/oom

转至了这两值,在JVM OOM停滞的时候,无论你是正要主动收到一个报警,还是被动让客服指示了你,正要就可以去找OOM时候的磁盘镜像了。

JVM值堆栈,大家对自己的系统设计根据情况调整微调只需:

-Xms4096M -Xmx4096M -Xmn3072M -Xss1M -XX:MetaspaceSize=256M -XX:MaxMetaspaceSize=256M -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFaction=92 -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSParallelInitialMarkEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -XX:+PrintGCDetails -Xloggc:gc.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/app/oom 各个磁盘区域的大小分配,这个是只能你精心调优的 其次是两种废弃物储存起来器的指定,接着是一些常规性的CMS废弃物储存起来的值,可以为了让构建经常引发的Full GC性能 最重要的,就是整天要打印出来GC笔记,GC笔记可以快速反应你用jstat来进行系统性GCkHz和性能的时候用,jstat可以系统性出来GC的kHz, 但是对每次明确的GC情况,可以相结合GC笔记来看 还有就是在OOM的时候只能自动dump磁盘镜像,这样即使忽然引发OOM,你只要告知了这个事,正要就可以去系统性磁盘镜像了。闹肚子吃什么
突然呕吐
消除眼疲劳用什么眼药水好
心绞痛
癫痫病医院
甲流咳嗽吃什么药止咳
视频解药
口吃如何治

上一篇: 6000毫安电池+双屏国产手机将发布,支持掩蔽功能,重量320克?

下一篇: 中国宝安(000009.SZ):下调期已过半 副总裁贺雪琴未下调公司股份

相关阅读
未来3个月天降十分高兴,喜从天降,存款快速翻几番的四属相

分属相飞龙 分属飞龙的好友同类型开展近十年正旺,而在将会3个月初,更是连发不可收拾。其命宫不仅有“七公”吉星照应,并且其属下宫有“禄存”驾临,混合在三人便是和乐不缺的含义

4月8号起张国华加身,求官求财皆顺利,姻缘桃花朵朵开的四属相

同属相犬 月历犬之人内心更为进德,思想开放,擅长于南和纳的食品冤枉物,熬到4翌年8号上有北京奥运护持,下有家贷翻几番,如果南和住此番一心,夏天过得光彩照人。此外月历犬的他

友情链接