快速业务通道

Java共享类 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
, CDS 使用一个只读的内存映射文档文件。这个文件包含核心系统类的内部表示,并在启动时映射到每个 JVM 的 Java 堆中。CDS 文件既可以由 Sun JRE 安装器创建,也可以像 Sun 的 CDS 文档中所描述的那样手工创建。

同样,主要的好处是启动时的成本节省和降低内存占用。启动时间之所以减少是因为核心类不是用传统的类装载机制(即 JVM 一次映射所有核心类,而不是单独装载每一个类)装载的。所使用的内存之所以减少是因为 JVM 共享了只读类数据,而不用每一个 JVM 占有自己的副本。同时,因为类不是用传统机制装载的,所以 JVM 不会由处理任何未使用的方法。

在撰写本文的时候,Sun 的实现只限于共享核心系统类,并且不允许共享应用程序级的类或者 JIT 代码。应用程序相对于它所使用的核心类越小,启动时节省越多。

根据 Sun 的 CDS 文档,在将来共享类功能将扩展到应用程序级的类,以改进大型应用程序的启动成本。

共享类的当前应用

Java 平台的用户已经利用了共享类技术。本节描述当前部署的一些应用领域。

事务环境

共享类(不管是系统类还是应用程序类)对事务环境(如 CICS 和 DB2)中的 JVM 启动和内存占用可以有显著的效果,在这里每个事务或者应用程序都包装在单独的 JVM 中。

z/OS 2.3 上的 Customer Information Control System Transaction Server (CICS TS) 是运行 Java 事务和应用程序的主要商业产品之一(目前使用了 IBM JVM 的共享类技术)。CICS TS 2.3 引入了共享类缓存工具,它将共享类功能扩展为它所控制的 JVM 池(称为它的 JVMset)。

CICS 使用自定义启动器程序来控制 master JVM 以及所有 worker JVM 的启动,它们需要服务请求来运行 Java 组件。除了系统堆中的共享类,它们还可以共享 worker JVM 中的特殊“中间件类”和一些“应用程序类”,如图 7 所示。这个共享类缓存工具为 CICS 客户提供了很多好处。例如,Java 类是由 master JVM 装载的,每个 CICS 区域(当 CICS 启动时) 装载一次而不是每个 JVM 一次,从而在 JVMset 中减少所有 worker 的类装载成本。通过在缓冲区中保留每个类的一个副本而不是每个 worker JVM 堆一个副本,共享类缓存工具还减少了 JVMset 的总体存储需求。

图 7. CICS 中的共享类

Java共享类 - 编程入门网

Java共享类(5)

时间:2011-02-28 IBM Lakshmi Shankar

在处理大量事务时,由更快的启动和更有效的内存处理而获得的好处会显著增加。图 8 中第一个图显示了共享和非共享 CICS 环境中一个简单事务的启动时间。第二个图显示整体 JVM 存储成本,也分为共享和非共享 CICS 环境。可以明显地看出当 JVM 的数量增加时,每个 JVM 所需要的内存减少了(与非共享比较)。

图 8. 使用共享类的 CICS 性能图

Java共享类 - 编程入门网

桌面系统

在 Apple Mac OS X 平台上运行的 Java 应用程序可以自动从这种技术中获得好处,Sun J2SE 1.5 用户也会从中受益。

共享类将来可能的应用

共享类技术有可能为基于 Java 平台的其他技术的用户带来极大的好处。本节重点介绍一些可能的应用。

普及环境

谈到运行 Java 应用程序,更小的内存占用对普及计算环境(如 PDA 和移动电话)会有显著的影响。这种环境是由特殊的 VM、JIT 编译器和 J2ME 中的类构成的。不过,当普及设备变得越来越普遍时,需要多 JVM 的可能性会增加。使用包含核心系统类的内存映射文件会显著节省内存,这对于普及设备是很关键的。

网格计算

在网格计算环境中,像 CPU 时间和内存容量这样的资源决定了所发生的成本,优化通常是有好处的。

使用共享类可以为网格提供者提供更好的运行 Java 程序的能力,因此它们可以同时为用户运行更多的任务。它还使客户每次使用的成本更低,这使它们具有更高的价值,为供应商提供更大的竞争优势。

Java 应用

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号