MetaSpace区域如何发⽣内存溢出
1.MetaSpace是什么?
名词定义为:元空间内存,JDK1.8定义出来的区域,⽤于替换原来的永久代存储空间。
jdk怎么使用2.MetaSpace⼀般是存什么内容?
Class信息(主要的)、Meta信息、⽅法的编译信息及字节码、Java类对应的HotSpot虚拟机中的内部表⽰也存储在这⾥等等3.到底什么情况下MetaSpace内存溢出
⼀般⽽⾔,这块发⽣的内存溢出的概率⾮常的⼩,⼀般由于2点导致:
1.在JVM正式环境,直接使⽤JDK⾃带的参数,⼀般默认的只有⼏⼗MB,针对⼤型的应⽤项⽬,很容易不够,报异常。
2.很多⼈在写cglib之类的技术动态⽣成⼀些类,如果代码没有控制好回收,容易引发MetaSpace溢出。
4.如何解决
⼀般推荐使⽤512MB,是⾜够的。