存储类元数据信息的元空间该如何理解?公司进程规划是抢快还是慢中求稳?

2023-01-18 08:52:16 来源:创视网

元空间(Metaspace)

前言

很多开发者都在其系统中见过“java.lang.OutOfMemoryError: PermGen space”这一问题。这往往是由类加载器相关的内存泄漏以及新类加载器的创建导致的,通常出现于代码热部署时。相对于正式产品,该问题在开发机上出现的 频率更高,在产品中最常见的“问题”是默认值太低了。常用的解决方法是将其设置为256MB或更高。

JDK8 HotSpot JVM 将移除永久区,使用本地内存来存储类元数据信息并称之为:元空间(Metaspace)。这意味着不会再有java.lang.OutOfMemoryError: PermGen问题,也不再需要你进行调优及监控内存空间的使用。

总结:

PermGen空间状况:这部分内存空间将全部移除。JVM的参数:PermSize 和 MaxPermSize 会被忽略并给出警告(如果在启用时设置了这两个参数)。

Metaspace 容量:默认情况下,类元数据只受可用的本地内存限制(容量取决于是32位或是64位操作系统的可用虚拟内存大小)。新参数(MaxMetaspaceSize)用于限制本地内存分配给类元数据的大小。如果没有指定这个参数,元空间会在运行时根据需要动态调整。

另外,对于僵死的类及类加载器的垃圾回收将在元数据使用达到“MaxMetaspaceSize”参数的设定值时进行。适时地监控和调整元空间对于减小垃圾回收频率和减少延时是很有必要的。持续的元空间垃圾回收说明,可能存在类、类加载器导致的内存泄漏或是大小设置不合适。

抢快还是慢中求稳?

现在的初创公司有两种模式,一种是抢时机尽快推出,日后再慢慢作修改,或是可以等产品更成熟一点才选择时机推出。莫林表示,就像LinkedIn在初期就已经奠定重心在职场,Path从一开始也把焦点放在家庭和至亲好友的核心价值上,在创业的早期就已经确定整个商业模式的基础,这麼作的好处,能让公司有长期的发展,虽然成长速度会比较缓慢,但也比较稳定。

莫林表示,抢快有时候冒的风险比较大,但相对来讲也有可能快速窜起。但无论是抢快还是求稳定,他说,最怕的就是心态摇摆不定,最后两头落空。

x 广告
x 广告

Copyright   2015-2022 财富赢家网版权所有  联系邮箱:920 891 263@qq.com

京ICP备2022016840号-48