フェイルセーフ モードでの実行時は、JRun がリモート起動による自動復旧機能を提供します。サーバが停止している場合にクライアントが接続を試みると、RMID が自動的にそのサーバを再起動します。フェイルセーフ モードでサーバを起動する前に、RMID を起動しておく必要があります。RMID を起動せずにサーバを起動しようとすると、エラー メッセージが表示され、サーバは起動されません。
RMID は、Java 2 プラットフォームのリモート起動エージェントであり、EJB エンジンは RMID を使用してフェイルセーフ操作を提供します。特定のサーバ上でフェイルセーフ モードで実行している JRun のすべてのインスタンスが、RMID を使用して管理されます。JRun のあるインスタンスが停止した場合、次のクライアントがそのインスタンスに接続しようとしていることを RMID が検知すると、自動的にそのインスタンスを再起動します。
RMID は、実行ディレクトリのすぐ下に log ディレクトリを作成します。このディレクトリには、RMID が JRun のインスタンスを再起動する際に使用する情報が含まれています。開発およびテスト時は RMID を毎回クリーンな状態で起動することが望ましいため、RMID を再起動する前に log ディレクトリを削除してください。詳細は、JDK のマニュアルまたは http://java.sun.com/products/jdk/rmi を参照してください。
JRun をフェイルセーフ モードで起動する前に、RMID を起動する必要があります。RMID を起動するには、コマンド ウィンドウを開いて作業ディレクトリに移動し、次の手順を実行します。
% cd /tmp % rmid
既定では、[rmid log] ウィンドウに出力メッセージが表示されます。
% rmid -stop
C:¥> cd ¥temp C:¥temp> start rmid
rmid.exe というタイトルの新しいウィンドウが表示されます。既定では、この新しい ウィンドウに出力メッセージが表示されます。このウィンドウは、RMID が停止 されるまで開いたままになります。
C:¥temp> rmid -stop
サーバ ツールを使用して、EJB エンジンをフェイルセーフ モードで起動および停止します。-start
オプションを使用すると、/deploy ディレクトリのファイルを使ってサーバが起動されます。このとき、Deploy ツールが以前に処理した Bean Jars が、生成された runtime.properties ファイルとともに /deploy ディレクトリから /runtime ディレクトリにコピーされます。また、ejipt_objects.jar および ejipt_exports.jar ファイルもコピーされます。そして、EJB エンジンを起動します。
% cd /jrun % java -Djava.security.policy=lib/jrun.policy -classpath lib/ejipt_tools.jar allaire.ejipt.tools.Server -start
-restart
オプションを使用すると、jar ファイル、および /runtime ディレクトリに
コピー済みの runtime.properties ファイルを使ってサーバが起動されます。
% cd /jrun % java -Djava.security.policy=jrun.policy -classpath lib/ejipt_tools.jar allaire.ejipt.tools.Server -restart
-stop
オプションを使用すると、サーバが停止します。
% cd /jrun % java -Djava.security.policy=lib/jrun.policy -classpath lib/ejipt_tools.jar allaire.ejipt.tools.Server -stop
EJB エンジンのフェイルセーフ モードでの起動および停止に関する追加情報については、JRun 文書のページで提供されている allaire.ejipt.tools.Server API JavaDocs を参照してください。