java占用内存:学习如何使 Java 应用程序启动更快以及占用更少的内存来源: 发布时间:星期三, 2009年4月1日 浏览:12次 评论:0
如今 Java 应用面临个问题:它们惟可用容器是 Java 虚拟机(Java virtual machineJVM)进程自身需要多个 JVM 来彼此隔离 Java 应用这会带来两个主要负面影响第个是每次 JVM 所花费启动时间第 2个是每个 JVM 所需内存占用考虑到这些开销以及不能在个 JVM 中隔离应用很显然需要进行些基础性工作才能解决这些问题答案就是共享类在本文中IBM Java Technology Center Development Team 成员 Lakshmi Shankar、Simon Burns 和 Roshan Nichani 讨论了 JVM 中共享类背后概念、它们工作原理以及用户如何利用这种技术他们还讨论了这种技术几种当前实现以及在将来会有什么样应用 要真正彼此隔离 Java 应用实质上需要多个 JVM然而启动成本和内存占用使这种方式不那么理想而共享类可以同时解决这两个问题在多 JVM 环境中共享类通过将组核心系统类装载到共享内存中可以在多个 JVM 中共享这些类这些共享类放到内存个共享区域中它们在这里对所有 JVM 都是保持致结果共享类只需要在第次使用时装载到内存中这消除了在以后每次 JVM 时装载它们固定成本并减少了每个 JVM 中内存占用 IBM 在 z/OS 平台上实现了共享类技术Apple Computer Inc. 在 Mac OS X 上实现了名为 Java Shared Archive(JSA)种共享类而 Sun 在 J2SE 1.5 版中引入了基于 JSA 技术 Class Data Sharing (CDS)让我们分析下这些实现是如何工作 |