189 8069 5689

JDK13中的AppCDS是什么-创新互联

这篇文章主要为大家展示了JDK13中的AppCDS是什么,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。

10年积累的网站设计制作、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计制作后付款的网站建设流程,更有乐陵免费网站建设让你可以放心的选择与我们合作。

简介

AppCDS的全称是Application Class-Data Sharing。主要是用来在不同的JVM中共享Class-Data信息,从而提升应用程序的启动速度。

通常来说,如果要执行class字节码,JVM需要执行下面的一些步骤:给定一个类的名字,JVM需要从磁盘上面找到这个文件,加载,并验证字节码,最后将它加载进来。

如果JVM启动的时候需要加载成百上千个class,那么需要的就不是一个小数目了。

对于打包好的jar包来说,只要jar的内容不变,那么jar包中的类的数据始终是相同的。JVM在启动时候每次都会运行相同的加载步骤。

AppCDS的作用就是将这些能够共享的数据归类成一个存储文件,在不同的JVM中共享。

基本步骤

对AppCDS有了基本的了解之后,我们讲一下AppCDS的大概工作流程:

  • 选择要归档的class,并创建一个class的列表,用在归档中。( -XX:DumpLoadedClassList)
  • 创建归档文件(-Xshare:dump和-XX:SharedArchiveFile)
  • 使用归档文件(-Xshare:on 和 -XX:SharedArchiveFile)

新的JVM可以使用归档文件来启动,从而减少了class加载的步骤。同时加载到内存中的区域甚至可以在其他的JVM实例中共享。从而极大的提高了JVM的启动速度。

下面我们从JDK class文件归档和应用程序class文件归档两个方面来讲解AppCDS的具体使用。

JDK class文件归档

最简单的AppCDS的例子就是归档JDK的class文件。JDK12,JDK13默认情况下已经开启了AppCDS的支持。如果需要停用,我们可以添加 -Xshare:off。

下面的例子专门用于JDK10和JDK11。

创建JDK class-data archive

我们可以使用-Xshare:dump来创建JVM启动时候默认加载的Class-Data:

java -Xshare:dump -XX:SharedArchiveFile=/tmp/sharedarchive.jsa

另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享标题:JDK13中的AppCDS是什么-创新互联
文章转载:http://cdxtjz.cn/article/ecipo.html

其他资讯