400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

追踪JVM中的本地内存

1.概述

有没有想过为什么Java应用程序通过众所周知的-Xms和-Xmx调优标志消耗的内存比指定数量多得多?出于各种原因和可能的优化,JVM可以分配额外的本机内存。这些额外的分配最终会使消耗的内存超出-Xmx限制。

创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都网站制作、成都网站设计、察哈尔右翼前网络推广、微信小程序开发、察哈尔右翼前网络营销、察哈尔右翼前企业策划、察哈尔右翼前品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供察哈尔右翼前建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

在本教程中,我们将列举JVM中的一些常见内存分配源,以及它们的大小调整标志,然后学习如何使用本机内存跟踪监视它们。

2.原生分配

堆通常是Java应用程序中最大的内存使用者,但还有其他人。除了堆之外,JVM还从本机内存中分配出一个相当大的块来维护类的元数据,应用程序代码,JIT生成的代码,内部数据结构等。在下面的部分中,我们将探讨其中的一些分配。

2.1. Metaspace(元空间)

为了维护有关已加载类的一些元数据,JVM使用名为Metaspace的专用非堆区域。在Java 8之前,被称为PermGen或Permanent Generation。 Metaspace或PermGen包含有关已加载类的元数据,而不是它们的实例,它们保存在堆中。

这里重要的是堆大小配置不会影响元空间大小,因为Metaspace是一个堆外数据区。为了限制Metaspace大小,我们使用其他调优标志:


新闻名称:追踪JVM中的本地内存
网页网址:http://mzwzsj.com/article/jdeeoo.html

其他资讯