A Collection of JVM Options http://blogs.sun.com/watt/resource/jvm-options-list.html
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.wsfep.multiplatform.doc/info/ae/ae/tprf_tunejvm_v61.html
在 Solaris 平台上,应用程序服务器在 Sun HotSpot JVM 上运行,而不是在 IBM JVM 上运行。对 Sun JVM 使用正确的调整参数以利用其性能优化功能十分重要。
Sun Hotspot JVM 依靠分代垃圾回收来实现最佳性能。下列命令行参数对于调整垃圾回收来说非常有用。 ----------------------------------------- -XX:SurvivorRatio 将 Java 堆划分为旧对象(长生命周期对象)区域和新对象区域。新对象区域进一步细分为两部分,第一部分用于分配给新对象(称为初始区域),第二部分存放那些经过其前几次垃圾回收之后、但在被提升为旧对象之前仍在使用中的新对象(称为幸存者空间)。幸存者比率是堆的新对象区域中初始区域与幸存者空间的比率。增大此设置将针对需要创建大量对象但仅保留少量对象的应用程序优化 JVM。与其他应用程序服务器相比,WebSphere Application Server 实例会生成更多中等生命周期对象和长生命周期对象,因此,应该将此设置设置为小于缺省值。
缺省值: 32 建议值: 16 用法: -XX:SurvivorRatio=16
----------------------------------------- -XX:PermSize 为永久生成对象保留的堆区域存储 JVM 的所有反射数据。对于动态地装入和卸装大量类的应用程序来说,应该增大此大小以优化它们的性能。通过将此参数设置为 128 兆字节,可以消除增大此部分堆所需的开销。
建议值: 128m 用法: XX:PermSize=128m 将 perm 大小设置为 128 兆字节。
----------------------------------------- -Xmn 此设置控制允许新生成的对象在堆中耗用的空间量。正确调整此参数有助于降低垃圾回收开销,从而缩短服务器响应时间并提高吞吐量。此参数的缺省设置通常过低,这将导致执行大量的小型垃圾回收操作。如果将此参数设置得过高,可能会导致 JVM 仅执行大型(全面)垃圾回收。这些垃圾回收操作通常会耗时几秒钟,这将严重影响服务器的整体性能。您必须保持将此参数设置为小于整个堆大小的一半,以避免这种情况出现。
缺省值: 2228224 字节 建议值: 大约整个堆大小的 1/4 用法: -Xmn256m 将大小设置为 256 兆字节。
----------------------------------------- -Xnoclassgc 缺省情况下,当一个类没有任何活动实例时,JVM 就会从内存中卸装该类,但是这样会使性能下降。如果关闭类垃圾回收,就可以消除由于多次装入和卸装同一个类而造成的开销。
如果不再需要某个类,那么该类在堆中所占用的空间通常将用于创建新对象。但是,如果应用程序通过创建类的新实例来处理请求,并且该应用程序的请求是随机出现的,那么可能会发生以下情况:先前请求者完成后,正常的类垃圾回收将通过释放这个类占用的堆空间来清除这个类,但当下一个请求出现时,又必须将这个类重新实例化。在这种情况下,您可能想使用此选项来禁用类垃圾回收。
缺省值: 启用类垃圾回收。 建议值: 禁用类垃圾回收。 用法: Xnoclassgc 禁用类垃圾回收。
----------------------------------------- 有关调整 Sun JVM 的其他信息,请参阅 Java HotSpot VM 的性能文档。 http://java.sun.com/docs/hotspot
|