![]() ![]() ![]() ![]() |
この節では、別の JDK で開発された Java アプリケーションを、実行時の最適なパフォーマンスを損なうことなく Oracle JRockit JDK に移行する方法について説明します。この節の内容は以下のとおりです。
アプリケーションを BEA JRockit JVM に移行するプロセスは比較的簡単です。環境を若干変更して、簡単なコーディングのガイドラインに従うだけで済みます。この節では、その簡単なプロセスを正常に完了するための手順とヒントを示します。利点や、移行中に発生する可能性のある問題についても説明します。JRockit JDK で実行するときにアプリケーションが正常に動作するための、J2SE コーディングのベスト プラクティスも紹介します。
JRockit JDK は Oracle WebLogic Server に付属しているデフォルトの JDK です。現在、Java アプリケーションの開発に使用できる他の JDK も市販されていますが、Oracle では、Oracle の製品として JRockit JDK を使用することをお勧めします。
移行は、JRockit JDK を含む Oracle WebLogic Server がサポートされているすべてのプラットフォームで実行できます。サポートされるプラットフォームのリストについては、以下を参照してください。
http://edocs.bea.com/platform/suppconfigs/index.html
アプリケーションを JRockit JDK に移行するときに問題が発生したりバグを見つけたりした場合は、support@bea.com まで電子メールでご連絡ください。問題に関する以下のような情報をできる限りご提供ください。
この節では、Sun Microsystems の JDK など、サードパーティ JDK から JRockit JVM に移行する際に必要な、環境および実装の基本的な変更点について説明します。内容は以下のとおりです。
注意 : | この節で説明する変更は、主に Oracle WebLogic Server に該当します。別の Java アプリケーションを使用している場合は、アプリケーションの設定に従って、スクリプトと環境を変更する必要があります。 |
サードパーティ JDK から JRockit JVM に移行するには、ファイルを以下のように変更する必要があります。
<WEBLOGIC_HOME>/common/commEnv.cmd
(または .sh
) の JAVA_HOME
環境変数を適切なパスに設定する。<WEBLOGIC_HOME>/common/commEnv.cmd
(または .sh
) の JAVA_VENDOR
環境変数を BEA
に設定する。-XX:NewSize
など) を削除する。可能であれば、これらのオプションを Oracle JRockit JVM に固有のオプション (-Xns
など) に置き換えます。変更する必要のある他のフラグは MEM_ARGS
と JAVA_VM
です。
(JRockit JVM でサポートされているコマンドライン オプションの詳細については、リファレンス マニュアルを参照してください)。
config.xml
のデフォルトのコンパイラ設定を、javac
コンパイラを指すように変更します。
アプリケーションを JRockit JDK に正常に移行するためのその他のコーディング プラクティスについては、「Java アプリケーションの開発」を参照してください。
アプリケーションを JRockit JDK に移行したら、最適なパフォーマンスを求めて JVM をチューニングすることができます。たとえば、別の起動ヒープ サイズを指定したり、カスタムのガベージ コレクション パラメータを設定したりできます。JRockit JVM のチューニングに関する詳細については、「プロファイリングおよびパフォーマンス チューニング」を参照してください。
非標準のオプション (-X
で始まるオプション) は、起動時に JVM をチューニングするための重要なツールです。これらのオプションを使用して、さまざまな Java アプリケーションのニーズに適合するように JRockit JVM の動作を変更します。
どの JVM でも非標準のオプションを使用しますが、オプション名は JVM 同士で異なる場合があります。たとえば、JRockit JVM では、世代別コンカレントおよび世代別パラレル ガベージ コレクタで、ナーサリを設定するために非標準の -Xns
オプションを使用しますが、Sun の HotSpot JVM では、この値を設定するために非標準の -XX:NewSize
オプションを使用します。
アプリケーションを JRockit JDK に移行する場合は、用意されている非標準のオプションについて理解しておくことをお勧めします。詳細については、リファレンス マニュアルを参照してください。
また、非標準のオプションはいつでも変更される可能性があることに注意してください。
アプリケーションをプロダクション環境に置く前に、必ず JRockit JVM 上でアプリケーションをテストしてください。Sun JVM (HotSpot) で開発したアプリケーションは、プロダクション環境に置く前に JRockit JVM 上でテストする必要があります。
JRockit JVM でアプリケーションをテストするには、次の手順に従います。
Sun JDK に通常備わっている以下の J2SE ツールは、JRockit JDK には付属しません。
JRockit JDK では、Sun ツールの大部分より同等であるか、または良いかを内部のツールを提供します。コード リスト 5-1 には、Sun ツールと、それに対応する JRockit JDK の一覧を示します。ツールの中には、jrcmd
機能を必要とするものがあります。詳細については、「診断コマンドの実行」を参照してください。
jstat は JRockit JVM と動作します。JRockit Runtime Analyzer (「JRockit Runtime Analyzer」を参照) および Oracle JRockit Mission Control 内の JRockit Management Console (「JRockit Management Console」を参照) はこのためにしかしながら、より良いツールです。
|
||
jconsole は JRockit JVM と動作します。JRockit Mission Control の JRockit Management Console (「JRockit Management Console」を参照) は JRockit JVM をモニタするためのしかしながら、より良いツールです。
|
||
この節では、JRockit JVM の実行時および Sun Hotspot JVM の実行時に利用できるコマンドライン オプションの互換性について説明します。オプションの中には、名前だけが同じもの、機能だけが同じもの、および名前と機能の両方が同じものがあります。
表 5-2 は、Sun Hotspot JVM と JRockit JVM で名前が同じであるにもかかわらず、機能が異なるオプションを示しています。
-Xms 」を参照。
|
表 5-3 は、Sun Hotspot と JRockit JVM で同じまたは類似の機能を持つ JVM にもかかわらず、名前が異なるオプションを示しています。
-Xgc:singlecon
|
||
表 5-4 は、Oracle JRockit JVM でのみ利用できるオプションを示しています。
この節で説明した移行に関するヒントは、今後発展していくものです。JRockit JDK へ正常に移行するための方法は、移行するアプリケーションや使用されている VM によって異なることがよくあります。Oracle では、Oracle JRockit JDK へのアプリケーションの移行に関するユーザの経験に基づいた提案を歓迎します。Oracle JRockit のフォーラム (dev2dev) に移行のアイデアやコメントをお気軽にお寄せください。
![]() ![]() ![]() |