Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
アプリケーション開発でのテストやシステムの運用中に,修正したJ2EEアプリケーションと動作中のJ2EEアプリケーションを入れ替えたい場合,リロード機能を使用した入れ替えができます。展開ディレクトリ形式のJ2EEアプリケーションを構成するファイルを更新した場合に,更新検知やコマンド実行によって,更新したJ2EEアプリケーションをリロードできます。リロード機能を使用することで,少ない手順でJ2EEアプリケーションを動的に入れ替えられるようになります。
この項では,展開ディレクトリ形式のJ2EEアプリケーションの更新検知とリロードをするための設定について説明します。コマンドやファイルのキーについては,マニュアル「アプリケーションサーバ リファレンス コマンド編」,およびマニュアル「アプリケーションサーバ リファレンス 定義編(サーバ定義)」を参照してください。
展開ディレクトリ形式のJ2EEアプリケーションをリロードするために必要な設定は,構成ファイルの更新を検知してリロードするか,コマンドを実行してリロードするかによって異なります。展開ディレクトリ形式のJ2EEアプリケーションをリロードするために必要な設定を次の表に示します。
表13-17 リロードするために必要な設定
設定項目 | 更新検知によるリロードの場合 | コマンドによるリロードの場合 |
---|---|---|
リロード機能の適用範囲の設定 | ○ | ○ |
更新検知インターバルの設定 | ○ | − |
構成ファイル更新用インターバルの設定 | ○ | − |
リロード遅延実行の設定 | ○ | − |
セッション情報ファイル格納先ディレクトリの変更 | △ | △ |
JSP事前コンパイルの設定 | △ | △ |
J2EEアプリケーション実行時間の監視の設定 | △ | △ |
(凡例) ○:設定する △:必要に応じて設定する −:該当しない
リロード機能の適用範囲の設定は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内に指定します。
デフォルトの設定では,リロード機能は無効になっています。リロード機能を使用するためには,リロード機能を有効にして,適用範囲を設定する必要があります。
なお,リロード機能の有効/無効は,usrconf.propertiesのejbserver.rmi.localinvocation.scopeパラメタで指定するローカル呼び出し最適化機能の適用範囲と,リロード機能の適用範囲の組み合わせによって決まります。ローカル呼び出し最適化機能の適用範囲とリロード機能の適用範囲の対応については,「13.8.2 リロードの適用範囲」を参照してください。
更新検知インターバルの設定は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内に指定します。簡易構築定義ファイルでの更新検知インターバルの設定について次の表に示します。
表13-18 簡易構築定義ファイルでの更新検知インターバルの設定
指定するパラメタ | 設定内容 |
---|---|
ejbserver.deploy.context.check_interval | J2EEアプリケーションの構成ファイルを監視して更新を検知する間隔(秒)を指定します。 |
webserver.context.check_interval | Webアプリケーションの構成ファイルを監視して更新を検知する間隔(秒)を指定します。 |
webserver.jsp.check_interval | JSPの構成ファイルを監視して更新を検知する間隔(秒)を指定します。 |
更新検知インターバルの設定値の関係を次に示します。
構成ファイル更新用インターバルは,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内に指定します。簡易構築定義ファイルでの構成ファイル更新用インターバルの設定について次の表に示します。
表13-19 簡易構築定義ファイルでの構成ファイル更新用インターバルの設定
指定するパラメタ | 設定内容 |
---|---|
ejbserver.deploy.context.update.interval | J2EEアプリケーションの構成ファイルのコピーに必要な時間(秒)を指定します。 |
webserver.context.update.interval | Webアプリケーションの構成ファイルのコピーに必要な時間(秒)を指定します。 |
webserver.jsp.update.interval | JSPの構成ファイルのコピーに必要な時間(秒)を指定します。 |
構成ファイル更新用インターバルの設定値の関係を次に示します。
リロード遅延実行は,簡易構築定義ファイルの論理J2EEサーバ(j2ee-server)の<configuration>タグ内に次のパラメタを指定します。
Webアプリケーションをリロードする場合は,リロード実行前に生成したセッション情報を引き継いで,リロード後も継続して利用します。セッション情報は,セッション情報ファイルに出力されます。
変換前の文字 | 変換後の文字 |
---|---|
/ | $2f |
$ | $24 |
% | $25 |
+ | $2b |
セッション情報ファイルの出力先を変更する場合には,簡易構築定義ファイルで設定します。論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを設定します。
<configuration> <logical-server-type>j2ee-server</logical-server-type> <param> <param-name>ejbserver.deploy.session.work.directory</param-name> <param-value>C:\tmp\session_work</param-value> </param> : </configuration> |
JSP事前コンパイルでJSPファイルから生成されたクラスファイルを更新した場合も,J2EEアプリケーションの構成ファイルの更新を検知し,リロードが実行されます。
cjstartappコマンドに-jspcオプションを指定してJSP事前コンパイルを実行する場合には,usrconf.propertiesでJSPワークディレクトリなどを設定しておく必要があります。JSP事前コンパイルの設定については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.5.8 実行環境での設定(J2EEサーバの設定)」を参照してください。
なお,アプリケーション開発時にcjjspcコマンドを使用してJSP事前コンパイルを実行する場合には,JSPワークディレクトリなどはコマンドのオプションで指定します。cjjspcコマンドを使用したJSPの事前コンパイルについては,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(Webコンテナ)」の「2.5 JSP事前コンパイル機能とコンパイル結果の保持」を参照してください。
構成ファイルの更新を検知した場合,処理中のリクエストの処理が完了するとリロード処理を開始しますが,処理中のリクエストの処理が完了しない場合には,J2EEアプリケーション実行時間の監視のメソッドタイムアウトおよびメソッドキャンセルを実施することで,リロード処理を開始できます。
必要に応じて,J2EEアプリケーション実行時間の監視を設定してください。J2EEアプリケーション実行時間の監視の設定については,マニュアル「アプリケーションサーバ 機能解説 運用/監視/連携編」の「5.3.9 実行環境での設定」を参照してください。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.