美文网首页
真实案例之-MetaSpace分配过小导致JVM进程跑飞

真实案例之-MetaSpace分配过小导致JVM进程跑飞

作者: YDDMAX_Y | 来源:发表于2018-06-26 20:34 被阅读0次

在该例中使用的是G1垃圾回收器。

现象

9点51分full gc出现,9点57分JVM进程跑飞。
各项指标如下:
9点51分,full gc出现而且很高。不知道什么原因,9点51分之后的gc监控没了,但是gc日志直到9点57一直都是有的。


image.png
GC耗时

从gc日志可以看出,可以看出是因为metaspace满了触发full gc


gc日志 image.png

9点51因为full gc频率高,流量受影响。


image.png

9点51分及之后的cpu并没有因为gc频率的升高而升高。所以:gc频率高,cpu使用率并不一定高。


image.png

9点51分到9点57分之间,load也没变化,所以:gc频率高,load不一定高。
9点57分的load之所以这么高是因为什么呢?


image.png

线程状态:


image.png

解决

metaspace的配置如下:
-XX:MaxMetaspaceSize=268435456(256K)
-XX:MetaspaceSize=268435456(256K)
通过监控发现,近几个月metaspace的空间在240-250M之间,本来metaspace就快用完了,只是今天爆发了而已。
增大metaspace到512M,问题解决!

相关文章

  • 真实案例之-MetaSpace分配过小导致JVM进程跑飞

    在该例中使用的是G1垃圾回收器。 现象 9点51分full gc出现,9点57分JVM进程跑飞。各项指标如下:9点...

  • JVM之Metaspace解密

    一:Metaspace介绍 我们都知道jdk8之前有perm这一整块内存来存klass等信息,我们的参数里也必不可...

  • JVM之Metaspace解密

    一:Metaspace介绍 我们都知道jdk8之前有perm这一整块内存来存klass等信息,我们的参数里也必不可...

  • JVM - Metaspace

    JVM - Metaspace JDK8 HotSpot JVM现在使用了本地内存来存储类元数据,被称为Metas...

  • JVM metaspace outofmemory

    解决服务器进程退出问题(metaspace溢出) 现象策划反应服务器进不去,远程看了一下进程消失了(crash)有...

  • JVM-MetaSpace

    jdk8里特有的数据结构用来替代perm metaspace其实由两大部分组成 Klass Metaspace, ...

  • 定位JAVA进程被kill的原因

    哪些原因可能会导致JAVA进程被kill呢? Java应用程序的问题:发生OOM导致进程Crash JVM自身故障...

  • 可能出现OOM的区域和情况分析

    1. MetaSpace 加载太多类 metaspace 塞不下的时候会导致 full gc,连带回收老年代空间 ...

  • JVM源码分析之Metaspace解密

    概述 metaspace,顾名思义,元数据空间,专门用来存元数据的,它是jdk8里特有的数据结构用来替代perm,...

  • JVM源码分析之Metaspace解密

    本文来自: PerfMa技术社区PerfMa(笨马网络)官网 概述 metaspace,顾名思义,元数据空间,专门...

网友评论

      本文标题:真实案例之-MetaSpace分配过小导致JVM进程跑飞

      本文链接:https://www.haomeiwen.com/subject/zwdmyftx.html