Cosminexus システム構築ガイド
アプリケーション開発でのテストやシステムの運用中に,修正したJ2EEアプリケーションと動作中のJ2EEアプリケーションを入れ替えたい場合,リロード機能を使用した入れ替えができます。展開ディレクトリ形式のJ2EEアプリケーションを構成するファイルを更新した場合に,更新検知やコマンド実行によって,更新したJ2EEアプリケーションをリロードできます。リロード機能を使用することで,少ない手順でJ2EEアプリケーションを動的に入れ替えられるようになります。
この節では,展開ディレクトリ形式のJ2EEアプリケーションの更新検知とリロードをするための設定について説明します。更新検知とリロードについては,マニュアル「Cosminexus 機能解説」のJ2EEアプリケーションの更新検知とリロードに関する説明を参照してください。
展開ディレクトリ形式のJ2EEアプリケーションをリロードするために必要な設定は,構成ファイルの更新を検知してリロードするか,コマンドを実行してリロードするかによって異なります。展開ディレクトリ形式のJ2EEアプリケーションをリロードするために必要な設定を次の表に示します。
表4-14 リロードするために必要な設定
| 設定項目 | 更新検知によるリロードの場合 | コマンドによるリロードの場合 |
|---|---|---|
| リロード機能の適用範囲の設定 | ○ | ○ |
| 更新検知インターバルの設定 | ○ | − |
| 構成ファイル更新用インターバルの設定 | ○ | − |
| リロード遅延実行の設定 | ○ | − |
| セッション情報ファイル格納先ディレクトリの変更 | △ | △ |
| JSP事前コンパイルの設定 | △ | △ |
| J2EEアプリケーション実行時間の監視の設定 | △ | △ |
(凡例) ○:設定する。 △:必要に応じて設定する。 −:該当しない。
デフォルトの設定では,リロード機能は無効になっています。リロード機能を使用するためには,リロード機能を有効にして,適用範囲を設定する必要があります。リロード機能の適用範囲は,簡易構築定義ファイルで設定します。論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを設定してください。
なお,リロード機能の有効/無効は,usrconf.propertiesのejbserver.rmi.localinvocation.scopeパラメタで指定するローカル呼び出し最適化機能の適用範囲と,リロード機能の適用範囲の組み合わせによって決まります。ローカル呼び出し最適化機能の適用範囲とリロード機能の適用範囲の対応については,マニュアル「Cosminexus 機能解説」の更新検知とリロードの概要に関する説明を参照してください。
J2EEサーバは,J2EEアプリケーションの構成ファイルを定期的に監視していて,構成ファイルが更新されると更新を検知します。J2EEアプリケーションの構成ファイルを監視して更新を検知する間隔は,更新検知インターバルとして設定します。更新検知インターバルは,簡易構築定義ファイルで設定します。論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを設定してください。
更新検知インターバルの設定値の関係を次に示します。
構成ファイルの更新を検知してから,処理中のリクエスト数の監視を実施してリロードを開始するまでの時間を構成ファイル更新用インターバルとして設定します。構成ファイル更新用インターバルは,簡易構築定義ファイルで設定します。論理J2EEサーバ(j2ee-server)の<configuration>タグ内に,次のパラメタを設定してください。
構成ファイル更新用インターバルの設定値の関係を次に示します。
Webアプリケーションをリロードする場合,リロード遅延実行を設定できます。デフォルトの設定では,構成ファイル更新用インターバルのあとに新規リクエストを実行待ちにしますが,リロード遅延実行を設定しておくと,処理中のリクエスト数が0になるか,または設定した時間になるまで新規リクエストを受け付けることができます。リロード遅延実行では,リロード遅延実行を使用するかどうか,およびリロード処理を開始するまでの時間(最大遅延時間)を設定します。リロード遅延実行は,簡易構築定義ファイルで設定します。論理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事前コンパイルの設定については,「4.2(1) Webコンテナの機能を使用するための設定」を参照してください。
なお,アプリケーション開発時にcjjspcコマンドを使用してJSP事前コンパイルを実行する場合には,JSPワークディレクトリなどはコマンドのオプションで指定します。cjjspcコマンドを使用したJSPの事前コンパイルについては,マニュアル「Cosminexus アプリケーション開発ガイド」のJSPファイルの事前コンパイルに関する説明を参照してください。
構成ファイルの更新を検知した場合,処理中のリクエストの処理が完了するとリロード処理を開始しますが,処理中のリクエストの処理が完了しない場合には,J2EEアプリケーション実行時間の監視のメソッドタイムアウトおよびメソッドキャンセルを実施することで,リロード処理を開始できます。
必要に応じて,J2EEアプリケーション実行時間の監視を設定してください。J2EEアプリケーション実行時間の監視の設定については,「4.14 J2EEアプリケーション実行時間の監視の設定」を参照してください。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.