Server-Classマシンの検出

Java SE 5.0より、アプリケーション起動時に、そのアプリケーションが「server-class」マシン上で実行されているかどうかを起動ツールで検出できるようになりました。その場合は、Java HotSpot Client Virtual Machine (クライアントVM)ではなく、Java HotSpot Server Virtual Machine (サーバーVM)を使用してください。こうすることで、実行しているアプリケーションを反映するようにVMが設定されていなくても、パフォーマンスを向上できます。一般に、クライアントVMよりもサーバーVMの起動が低速ですが、徐々に速く動作するようになります。


注: Java SE 6の場合、server-classマシンとは、少なくとも2つのCPUと、最少でも2Gバイトの物理メモリーを備えているマシンを指します。

Java SE 6では、SolarisまたはLinuxを実行しているi586またはSparc 32ビット・マシン上でアプリケーションを起動するときに、-server-clientのどちらも指定されていない場合に、server-classの検出が行われます。以下の表からもわかるように、i586 Microsoft WindowsプラットフォームはデフォルトでクライアントVMを使用します。残りのプラットフォームは、サーバーVMのみを使用します。

アーキテクチャ OS デフォルトのクライアントVM server-classの場合はサーバーVM、
そうでない場合はクライアントVM
デフォルトのサーバーVM
SPARC 32ビット Solaris
 
X
 
i586 Solaris
 
X
 
i586 Linux
 
X
 
i586 Microsoft Windows
X
 
 
SPARC 64ビット Solaris
 
X
AMD64 Solaris
 
X
AMD64 Linux
 
X
AMD64 Microsoft Windows
 
X
凡例:   X =デフォルトVM      —=このプラットフォーム用に提供されていないクライアントVM

アプリケーション起動のためにコマンド行オプションを使用する方法の詳細は、Solaris、Linux、またはMac OS X用あるいはMicrosoft Windows用のjavaツール・ドキュメントを参照してください。


Copyright © 1993, 2020, Oracle and/or its affiliates. All rights reserved.