Excelsior JET とクライアントサイド アプリケーション

非常に競争率の高い現在のソフトウェア市場において、配布するアプリケーションの性能は重要なポイントの 1 つです。製品が成功するかどうかの鍵を握っていると言っても過言ではありません。特に、デスクトップ アプリケーションでは、クライアントサイド アプリケーションの対話的な性質によって、実行速度や応答時間の遅れはより明白になります。

残念ながら、従来の JVM ではデスクトップ アプリケーションの性能を直接対象にしません。代わりに、サーバーサイド用に設計されたマシンを使用して、より高価なハードウェアで長時間アプリケーションを実行して性能を向上しようとします。これはデスクトップ用のソリューションではなく、全く逆です。対照的に、Excelsior JET は、C/C++ コンパイラの伝統的な手法でクライアントサイド アプリケーションを最適化して、Java の性能を効果的に向上させます。

 

Excelsior JET とダイナミック JVM

なぜ従来の JVM はデスクトップで活用されないのでしょうか? 大きな問題は、ほとんどの JVM は Java アプリケーションを同時に実行して最適化し、徐々に性能を改善するということです。通常は、JVM 内で Java メソッドを解釈してこれらの一部をコンパイルして瞬時にネイティブ コードに変換します。どちらのテクニックも、安価なハードウェアで実行すると、デスクトップ アプリケーションの全体的な性能は低下します。また、重要なコードを素早く検出してコンパイルできません。スタートアップ後に、Java アプリケーションがゆっくりと動作します。たとえば、エンドユーザーが Java GUI アプリケーションを起動して何かをマウスでドラッグしたとします。これらのユーザーが、従来の JVM で発生するフレーム落ちや長い待ち時間を想定しているとは思えません。

Excelsior JET は、これらの遅い仮想マシンを使用する代わりに、スタティックなネイティブ コード コンパイラを使用して実行ファイルを生成します。これにより、アプリケーションは、スタートアップから高速に、そしてスムーズに実行されます。

さらに、JET は不正な競合からアプリケーションを保護します。簡単にリバース エンジニアリングができる Java クラス ファイルの代わりに、高度に最適化された実行ファイルをエンドユーザーに配布できます。ネイティブにコンパイルされた Java コードは、コンパイルされた C/C++ コードと同様に、リバース エンジニアリングが非常に困難です。

 

ネイティブ形式の配布

Excelsior JET が優れている別の点は、Java クライアントサイド アプリケーションの配布です。JET に付属する GUI ツールを使用して、Java アプリケーションの自己実行インストール パッケージを作成できます。インストールの実行には、Excelsior JET またはサードパーティのセットアップ ツールに付属している GUI ベースのインストーラを使用できます。また、Excelsior JET は、Java アプリケーションのダウンロード サイズを大幅に減少します。

 

Excelsior JET の開始

Excelsior JET を開始するには、2 つのステップを実行します:

  1. Excelsior JET の評価版をダウンロードしてインストールします。
  2. Getting Started チュートリアルに従って操作します。

 

追加情報

メモリのフットプリント

多くの場合、Excelsior JET はコンパイルした Java アプリケーションのメモリ フットプリントを軽減します。さらに、Excelsior JET JVM を調整することで、設定している最大の Java ヒープ サイズよりも多くのメモリが使用されないように設定できます。詳細は、次の資料を参照してください:

NT サービス

Windows 版の Excelsior JET は、Java アプリケーションを NT サービスに変換して配布できます。Excelsior インストーラを含むグラフィカル ツールは、NT サービスのシームレスな作成と配布をサポートしています。詳細は、次の資料を参照してください:

 

 

ページトップへ