ワークユニットの作成について説明します。
非同期アプリケーション連携実行基盤で使用するワークユニットを作成します。
システム構築シートから出力されたワークユニット定義ファイルを入力に、システム構築シートから出力されたワークユニット定義の登録コマンド(isaddwudef)を、以下のように実行します。
/opt/FSUNtd/bin/isaddwudef WU01.wu |
/opt/FJSVtd/bin/isaddwudef WU01.wu |
isaddwudef WU01.wu |
ポイント
上書き登録する場合は、isaddwudefコマンドに-oオプションをつけて実行します。
システム構築シートの入力については、“9.4.4 ワークユニット設定とアプリケーション情報の入力”を参照してください。システム構築シートの出力については、“9.4.5.3 ワークユニット設定とアプリケーション情報の入力の出力内容”を参照してください。
isaddwudefコマンドの詳細については、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。
コマンドのオプションおよび | 設定内容 |
---|---|
-M system | 指定しないでください。 |
-o | 登録時に、同名のワークユニット定義がすでに存在する場合に上書きします。ワークユニット定義が存在しない場合は新規に登録します。このオプションが省略された場合、同名のワークユニット定義が存在しない場合だけ登録されます。 |
ワークユニット定義ファイル名 | 非同期ワークユニット定義の記述されているテキストファイルのファイル名を指定します。ファイル名に空白文字を使用する場合は、ファイル名を引用符または二重引用符で囲んでください。 |
コマンドのオプションおよび | 設定内容 |
---|---|
-o | 登録時に、同名のワークユニット定義がすでに存在する場合に上書きします。ワークユニット定義が存在しない場合は新規に登録します。このオプションが省略された場合、同名のワークユニット定義が存在しない場合だけ登録されます。 |
ワークユニット定義ファイル名 | 非同期ワークユニット定義の記述されているテキストファイルのファイル名を指定します。ファイル名に空白文字を使用する場合は、ファイル名を引用符または二重引用符で囲んでください。 |
コマンドのオプションおよび | 設定内容 |
---|---|
-o | 登録時に、同名のワークユニット定義がすでに存在する場合に上書きします。ワークユニット定義が存在しない場合は新規に登録します。このオプションが省略された場合、同名のワークユニット定義が存在しない場合だけ登録されます。 |
ワークユニット定義ファイル名 | 非同期ワークユニット定義の記述されているテキストファイルのファイル名を指定します。ファイル名に空白文字を使用する場合は、ファイル名を引用符または二重引用符で囲んでください。 |
非同期アプリケーション連携実行基盤で使用するワークユニットを作成します。ワークユニットの作成方法には、システム構築シートから出力されたコマンド(isj2eeadminコマンド)を使用する方法と、Interstage管理コンソールを使用する方法があります。
■コマンドを使用する場合
コマンドを実行し、ワークユニットを作成します。
システム構築シートから出力されたIJServer定義ファイルを入力に、システム構築シートから出力されたJ2EEの定義更新コマンド(isj2eeadmin)を、以下のように実行します。
/opt/FJSVj2ee/bin/isj2eeadmin ijserver -a -f WU02_ijserver.xml |
/opt/FJSVj2ee/bin/isj2eeadmin ijserver -a -f WU02_ijserver.xml |
isj2eeadmin ijserver -a -f WU02_ijserver.xml |
ポイント
上書き登録する場合は、isj2eeadminコマンドに-oオプションをつけて実行します。
システム構築シートの入力については、“9.4.4 ワークユニット設定とアプリケーション情報の入力”を参照してください。システム構築シートの出力については、“9.4.5.3 ワークユニット設定とアプリケーション情報の入力の出力内容”を参照してください。
isj2eeadminコマンドの詳細については、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。
サブコマンド名 | 設定内容 |
---|---|
ijserver | IJServerの新規追加、定義更新、削除を行います。 |
system | 指定しないでください。 |
resource | 指定しないでください。 |
service | 指定しないでください。 |
コマンドのオプションおよび | 設定内容 |
---|---|
-a [-f filename] | IJServerの新規追加を行います。同名のIJServer定義が存在しない場合にだけ、登録されます。 注意
|
-o [-f filename] | IJServerの追加を行います。登録時に同名のIJServer定義がすでに存在する場合に、上書きします。IJServer定義が存在しない場合は、新規に登録します。 注意
|
-e {-n ijs-name|-all} [-f filename] [-y] [-encode {UTF-8 | SJIS | EUC}] | IJServer定義の抽出を行います。
|
-d {-n ijs-name|all} {y} | 指定したIJServerを削除します。以下のオプションを合わせて指定してください。
注意 IJServer以外のワークユニットを指定した場合には、エラーとなります。
|
なお、IJServerの作成を行う前準備として、IJServer定義ファイルを作成します。
IJServer定義ファイルの記述形式については、“Interstage Application Server リファレンスマニュアル(コマンド編)”を参照してください。
■Interstage管理コンソールを使用する場合
Interstage管理コンソールの[Interstage Application Server] > [システム] > [ワークユニット] > [新規作成]画面で、ワークユニット(IJServer)を作成します。
以下の手順でIJServerを作成します。
[新規作成]画面で、ワークユニット名を入力して、ワークユニットタイプをIJServerに設定します。
[詳細設定] > [IJServer設定]から「EJBアプリケーションのみ運用」を選択します。
注意
業務処理実行アプリケーションと、Webアプリケーションとして作成した業務処理開始アプリケーションを、同一IJServer上へ配備し運用する場合は、[IJServer設定]のIJServerタイプは「WebアプリケーションとEJBアプリケーションを別JavaVMで運用」か「WebアプリケーションとEJBアプリケーションを同一JavaVMで運用」を選択してください。
代行ルートを定義している場合などで、通常ルートおよび代行ルートのアクティビティの両方に、同一のEJBアプリケーション名の業務処理実行アプリケーションを使用する場合は、同一のIJServerに配備することはできません。
同一のEJBアプリケーション名の業務処理実行アプリケーションは、それぞれ異なるIJServerに配備する必要があります。
同一のIJServerに配備する場合には、業務処理実行アプリケーションのEJBアプリケーション名を、異なるアプリケーション名に設定にするように設計してください。
[詳細設定] > [DBコネクション設定]から「データソースの定義作成(アプリケーションサーバ)」で作成したデータソース名を選択し、「事前コネクト数」を必要な値に変更します。
注意
事前コネクト数を適切に設定した場合、IJServer起動後、データベースへの初回接続の性能が改善されます。事前コネクト数が少ない場合、業務運用中にデータベース接続処理が実行される可能性が高くなり、処理性能が低下する場合があります。一方、事前コネクト数が多い場合、データベースやIJServerでの消費資源が増加します。目安値を基準に、処理性能や消費資源のバランスが最適となるようチューニングしてください。
以下に業務処理開始アプリケーション、および業務処理実行アプリケーション別に使用するデータソースの一覧を示します。作成したIJServer上で動作するアプリケーションが業務処理開始アプリケーションなのか業務処理実行アプリケーションなのかを考慮し事前コネクト数のチューニングを実施してください。
アプリケーション | フロー定義DB用データソース | メッセージトラッキングDB用データソース | メッセージ格納DB用データソース | 業務用データベース用データソース |
業務処理開始アプリケーション | ○ | × | △ | △ |
業務処理実行アプリケーション | × | △ | △ | △ |
○:使用する、△:任意で使用する、×:使用しない
注1)メッセージ格納DB用データソースは、メッセージとDBの整合性保証機能を使用する場合に使用します。
注2)アプリケーションで業務用データベースを使用する場合に使用します。
注3)メッセージトラッキング機能を使用する場合に使用します。
以下に、事前コネクト数へ設定する値の目安を示します。
フロー定義DB用データソース
IJServer上で業務処理開始アプリケーションを運用する場合、フロー定義DBのデータソースについて、IJServerに配備している業務処理開始アプリケーションの同時処理数と同じ数を、事前コネクト数として設定します。同時処理数については、“表9.5 事前コネクト数設定で利用するアプリケーションの同時処理数の設定値”を参照してください。
メッセージトラッキングDB用データソース
メッセージトラッキングを行うアプリケーション連携フローに関係するIJServerでは、使用するメッセージトラッキングDBのデータソースについて、IJServerに配備している業務処理実行アプリケーションの同時処理数と同じ数を、事前コネクト数として設定します。同時処理数については、“表9.5 事前コネクト数設定で利用するアプリケーションの同時処理数の設定値”を参照してください。
メッセージ格納DB用データソース
メッセージとDBの整合性保証機能を利用し、IJServer上で業務処理開始アプリケーションのみを運用する場合、メッセージ格納DBのデータソースについて、IJServerに配備している業務処理開始アプリケーションの同時処理数と同じ数を、事前コネクト数として設定します。
メッセージとDBの整合性保証機能を利用し、IJServer上で業務処理実行アプリケーションのみを運用する場合、メッセージ格納DB用のデータソースについて、IJServerに配備している業務処理実行アプリケーションの同時処理数と同じ数を、事前コネクト数として設定します。
同一のIJServer上で業務処理開始アプリケーションと業務処理実行アプリケーションを運用する場合、IJServerに配備している業務処理開始アプリケーションの同時処理数と業務処理実行アプリケーションの同時処理数の合計値を設定します。
同時処理数については、“表9.5 事前コネクト数設定で利用するアプリケーションの同時処理数の設定値”を参照してください。
業務用データベース用データソース
IJServer上のアプリケーションで使用する業務用データベースのデータソースを、必要な分だけ事前コネクトします。メッセージとDBの整合性保証機能を利用する場合は、メッセージ格納DBと業務用データベースが同一になるため、メッセージ格納DBの設定を利用します。メッセージとDBの整合性保証機能を利用しない場合は、アプリケーションの都合に合わせ、必要な分だけ事前コネクト数を設定してください。
アプリケーションの種類 | 同時処理数の設定値 |
---|---|
業務処理実行アプリケーション | Interstage管理コンソールの[Interstage Application Server] > [システム] > [ワークユニット] > “ワークユニット名” > “モジュール名” > “EJBアプリケーション名” > [アプリケーション環境定義]タブ画面の[初期起動インスタンス数]の設定値 |
業務処理開始アプリケーション(Message-driven Beanとして実装している場合) | Interstage管理コンソールの[Interstage Application Server] > [システム] > [ワークユニット] > “ワークユニット名” > “モジュール名” > “EJBアプリケーション名” > [アプリケーション環境定義]タブ画面の[初期起動インスタンス数]の設定値 |
業務処理開始アプリケーション(Message-driven Bean以外のEJBとして実装している場合) | Interstage管理コンソールの[Interstage Application Server] > [システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ画面の[EJBコンテナ設定]の[同時処理数]の最小設定値 |
業務処理開始アプリケーション(Servletとして実装している場合) | Interstage管理コンソールの[Interstage Application Server] > [システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ画面の[Servletコンテナ設定]の[同時処理数]の設定値 (注) |
注) Servletコンテナ設定の同時処理数には、Interstage管理コンソールの[Interstage Application Server] > [システム] > [サービス] > [Webサーバ] > [環境設定]タブ > [詳細設定] > [クライアントの同時接続数]で指定した値以上の数値を設定する必要があります。
他の設定の変更が必要な場合は変更し、作成ボタンを押します。詳細はInterstage管理コンソールのヘルプを参照してください。
注意
J2EEアプリケーションのトランザクション制御
メッセージとDBの整合性保証機能をローカルトランザクションで行うためには、EJBコンテナ設定で「分散トランザクションを使用する」の項目を「使用しない」に設定してください。
DBコネクション設定
DBコネクション設定でデータソースを指定した場合、初回データベース接続時の性能を向上させることができます。
トランザクションアイソレーションレベルの指定は、「default」のまま変更する必要はありません。
Interstage管理コンソールの以下のどちらかの箇所で、非同期アプリケーション連携実行基盤のクラスパスを設定します。
[システム] > [環境設定]タブ > [J2EEプロパティ]のクラスパス
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定]のクラスパス
非同期アプリケーション連携実行基盤のクラスパスは以下のように設定してください。
/opt/FJSVibs/lib/apfwflowctrl50.jar /opt/FJSVibs/lib/apfwmsgapi.jar /opt/FJSVibs/lib/apfwtrackapi.jar /opt/FJSVibs/lib/apfwibscm.jar /opt/FJSVibs/lib/apfwsetsecurity.jar /opt/FJSVwebc/lib/uji.jar /opt/FJSVapcef/lib/ujief.jar /opt/FJSVapclg/lib/ujilog.jar JDBCドライバのクラスパス (注1) ユーザ定義型クラス、またはユーザ定義型Exceptionのclassファイルまたはjarファイル (注2) |
[Interstageのインストールディレクトリパス]\BAS\lib\apfwflowctrl50.jar [Interstageのインストールディレクトリパス]\BAS\lib\apfwmsgapi.jar [Interstageのインストールディレクトリパス]\BAS\lib\apfwtrackapi.jar [Interstageのインストールディレクトリパス]\BAS\lib\apfwibscm.jar [Interstageのインストールディレクトリパス]\BAS\lib\apfwsetsecurity.jar [Interstageのインストールディレクトリパス]\APC\lib\uji.jar [Interstageのインストールディレクトリパス]\APC\lib\ujief.jar [Interstageのインストールディレクトリパス]\APC\lib\ujilog.jar JDBCドライバのクラスパス (注1) ユーザ定義型クラス、またはユーザ定義型Exceptionのclassファイルまたはjarファイル (注2) |
注1) JDBCドライバのクラスパスについては、“8.3.2 データベースライブラリの環境設定”の“◆JDBC環境の設定値”を参照してください。
注2) 以下を参照し、設定してください。
ユーザ定義型クラス、またはユーザ定義型Exceptionを使用している場合、以下の設定方法があります。
業務処理実行アプリケーションにユーザ定義型クラス、またはユーザ定義型Exceptionを実装している場合
運用時に業務処理実行アプリケーションを呼出す際に、ユーザ定義型クラス、またはユーザ定義型Exceptionは自動的に読み込まれますので、IJServerのクラスパス設定に、classファイルまたはjarファイルを設定する必要はありません。
本方法が推奨となります。
業務処理実行アプリケーションにユーザ定義型クラス、またはユーザ定義型Exceptionを実装していない場合
運用時に業務処理実行アプリケーションを呼出す際に、ユーザ定義型クラス、またはユーザ定義型Exceptionの情報を取り込む必要がありますので、IJServerのクラスパス設定に、classファイルまたはjarファイルを設定してください。
また本方法を用いる場合、“アプリケーションサーバオンラインマニュアル”の“Interstage Application Server J2EEユーザーズガイド(旧版互換)”を参照し、アプリケーションのクラス設計を行ってください。
利用するJDBCドライバの種類に応じ、ライブラリパスやその他の環境変数の設定が必要な場合があります。設定方法の詳細については、“8.3.2 データベースライブラリの環境設定”を参照してください。設定値の詳細については、“◆JDBC環境の設定値”を参照してください。
ライブラリパス(環境変数LD_LIBRARY_PATHに相当)の設定箇所
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定]のライブラリパス
環境変数(CLASSPATH、 PATH、LD_LIBRARY_PATH以外)の設定箇所
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定]の環境変数
ポイント
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [共通定義]の使用するXMLパーサの種別において、その他を選択する場合は、xercesを使用することができます。
非同期アプリケーション連携実行基盤のライブラリパスを指定します。
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定]のライブラリパスで以下を設定してください。
/opt/FJSVibs/lib /opt/FJSVapcef/lib |
[Interstageのインストールディレクトリパス]\BAS\lib [Interstageのインストールディレクトリパス]\APC\lib |
非同期アプリケーション連携実行基盤のシステムプロパティを設定します。
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定]のJavaVMオプションで以下を設定してください。
-Dcom.fujitsu.interstage.jms.queue_max_err=yes(注) |
注)メッセージの欠落防止のため、必ず設定する必要があります。
IJServerを自動的に起動する設定の場合は、“ワークユニット自動起動”の“起動ユーザ”に必ず“root”またはInterstage運用者を指定してください。“ワークユニット自動起動”は、Interstage管理コンソールの下記項目で設定します。
[システム] > [ワークユニット] > “ワークユニット名” > [環境設定]タブ > [ワークユニット設定]の“ワークユニット自動起動”で設定します。
受信キューに滞留メッセージが、存在しない場合、od60003のメッセージがシステムログ(Windowsの場合は、イベントログ)に出力されることがあります。業務の処理量が少ないなどの理由により、頻繁にod60003のメッセージが出力される場合、以下の設定を行うことでメッセージの出力を抑止できます。
[Interstage Application Server] > [システム] > [ワークユニット] > [ワークユニット名] > [環境設定]タブ > [ワークユニット設定]のJavaVMオプションに“-Dcom.fujitsu.ObjectDirector.DeterredMessage=YES”を設定します。