プロセスサービス定義
形式
set形式
〔set prc_process_count=最大同時起動サーバプロセス数〕
〔set prc_recovery_resident=Y|N〕
〔set prc_take_over_svpath=Y|N〕
〔set prc_take_over_dlpath=Y|N〕
〔set term_watch_time=連続異常終了限界経過時間〕
〔set max_socket_descriptors=ソケット用ファイル記述子の最大数〕
〔set term_watch_count=連続異常終了限界回数〕
〔set prc_prf_trace=Y|N〕
〔set prc_coresave_path=コアファイル格納パス〕
〔set prc_corecompress=Y|N〕
〔set watch_time=最大応答待ち時間〕
コマンド形式
〔prcsvpath パス名〕
機能
OpenTP1システム環境下で実行するサーバプロセスを管理するための実行環境を定義します。
プロセスサービス定義を変更した場合,OpenTP1を正常終了してdcresetコマンドを実行してください。
説明
set形式のオペランド
●prc_process_count=最大同時起動サーバプロセス数
~〈符号なし整数〉((1~10000))《64》
同一マシン内で同時に起動するサーバプロセス数の最大値を指定します。ただし,実際に起動できる最大プロセス数は,OpenTP1を起動しているマシンに依存します。
なお,このオペランドを指定する場合は,実装するメモリ量やマシンで起動できる最大プロセスを考慮して,指定してください。
ここで指定するプロセス数は,OpenTP1システムで動作する常駐,および非常駐の全サーバ(ユーザサーバ,およびシステムサービス)プロセス数を指定します。プロセス数には,次のコマンドが含まれます。
なお,ユーザサービス構成定義のdcsvstart定義コマンドは含まれません。
マルチサーバの場合は,起動する本数を加算します。
非常駐プロセスを指定しているユーザサーバやscdrsprcコマンドを使用すると,一時的に最大でユーザサービス定義のparallel_countオペランドの指定値の倍のプロセス数(常駐プロセス数と最大プロセス数を指定している場合は最大プロセス数の倍,常駐プロセス数だけを指定している場合は常駐プロセス数の倍)が起動されることがあります。
非常駐プロセスを指定しているユーザサーバ,およびscdrsprcコマンドで,倍のプロセス数が起動されるタイミングを次に示します。
新たなプロセスが起動する契機については,マニュアル「OpenTP1 運用と操作」のscdrsprcコマンドの説明を参照してください。
システムサービスの場合は,ログサービス,ジャーナル関連(チェックポイントダンプ,システムジャーナルなど),MCF,およびMQシステムの数を指定します。
●prc_recovery_resident=Y|N
~《Y》
UAPが異常終了したときに部分回復するプロセスを常駐にするか,非常駐にするかを指定します。非常駐にすると,UAPがダウンするたびに部分回復するプロセスが起動されます。OpenTP1を動作させるときにメモリに余裕がない場合は,Yを指定,またはこのオペランドを省略してください。Yを指定,またはこのオペランドを省略した場合は,部分回復する常駐プロセスの数は一つです。
●prc_take_over_svpath=Y|N
~《N》
ノード内で,ユーザサーバおよびコマンドのパスをリラン時に引き継ぐかどうかを指定します。
Yを指定すると,ユーザサーバおよびコマンドのパスを変更したあと,OpenTP1が正常開始するまでその変更が引き継がれます。
ユーザサーバおよびコマンドのパスの引き継ぎは,ノード内に限定されるので,系切り替え機能で切り替わった系には引き継がれません。
ユーザサーバおよびコマンドのパスの引き継ぎに失敗した場合は,警告メッセージを出力し,前回のオンライン中のユーザサーバおよびコマンドのパスの変更を引き継がないで処理を続行します。
●prc_take_over_dlpath=Y|N
~《N》
ノード内で,prcdlpathコマンドで設定したUAP共用ライブラリのサーチパスをリラン時に引き継ぐかどうかを指定します。
Yを指定すると,prcdlpathコマンドでUAP共用ライブラリのサーチパスを変更したあと,OpenTP1が正常開始するまでその変更が引き継がれます。prcdlpathコマンドを複数回実行した場合は,最後に実行したprcdlpathコマンドで設定されたサーチパスだけが引き継がれます。
UAP共用ライブラリのサーチパスを変更したあと,OpenTP1を正常開始した場合は,その変更は引き継がれません。そのため,正常開始後に変更後のサーチパスに指定したディレクトリからUAP共用ライブラリを読み込みたい場合は,環境変数でライブラリサーチパスを設定してください。
UAP共用ライブラリのサーチパスの引き継ぎは,ノード内に限定されるので,系切り替え機能で切り替わった系には引き継がれません。
UAP共用ライブラリのサーチパスの引き継ぎに失敗した場合は,KFCA00734-Wメッセージを出力し,前回のオンライン中に行ったUAP共用ライブラリのパスの変更を引き継がないで処理を実行します。
前回のオンライン中に,何度もprcdlpathコマンドでサーチパスを変更しながらユーザサーバを開始していた場合,サーチパスは引き継がれていても,リラン時にユーザサーバが正常に開始できないことがあります。
●term_watch_time=連続異常終了限界経過時間
~〈符号なし整数〉((0~32767))《10》(単位:分)
OpenTP1が異常終了した回数を監視する限界経過時間を指定します。0を指定した場合は,時間監視をしません。
指定時間内に3回連続してOpenTP1がシステムダウンした場合,プロセスサービスはKFCA00715-Eメッセージを出力して,システムの開始または再開始を中断します。この場合は,システムダウンをした要因を取り除いてから,dcsetupコマンドで一度OSへの登録を削除,再度登録するか,またはdcresetコマンドを入力してください。
システム環境定義のmode_confオペランドが「MANUAL2」の場合,プロセスサービスの連続ダウン以外はこのオペランドの指定は無効となります。
●max_socket_descriptors=ソケット用ファイル記述子の最大数
~〈符号なし整数〉((32~2032))
OpenTP1制御下のプロセス※でのソケット用に使用するファイル記述子の最大数を指定します。
OpenTP1制御下のプロセス※は,システムサーバやユーザサーバとの間で,ソケットを使用したTCP/IP通信でプロセス間の情報交換をしています。そのため,同時に稼働するUAPプロセスの数,および通信する他ノードの数によって,このオペランドを変更する必要があります。
ソケット用ファイル記述子の最大数の算出式を,次に示します。
このオペランドの指定が小さいと,OpenTP1制御下の他プロセスとのコネクションが設定できなくなるため,プロセスがKFCA00307-Eメッセージを出力して異常終了します。
指定値の優先順位は次のとおりです(1.>2.)。
ここで指定を省略した場合,システム共通定義の値を仮定します。
●term_watch_count=連続異常終了限界回数
~〈符号なし整数〉((1~3))《3》
このオペランドに1~3の値を指定すると,OpenTP1システム連続異常終了限界回数指定機能を使用できます。
term_watch_timeオペランドは,このオペランドの指定値が3,または省略された場合に有効となります。このオペランドとterm_watch_timeオペランドの関係を次の表に示します。
表3-2 term_watch_countオペランドとterm_watch_timeオペランドの関係
term_watch_count オペランドの指定値 | term_watch_timeオペランドの指定値 | |
---|---|---|
0 | 0以外 | |
1または2 | term_watch_timeオペランドの指定値に関係なく,term_watch_countオペランドの指定値で開始,再開始を中断します。 | term_watch_timeオペランドの指定値に関係なく,term_watch_countオペランドの指定値で開始,再開始を中断します。 |
3または省略 | 開始,再開始を中断しません。 | term_watch_timeオペランドの指定値に従い,3回で開始,再開始を中断します。 |
このオペランドで指定した回数まで連続してOpenTP1がシステムダウンした場合,プロセスサービスはKFCA00715-Eメッセージを出力して,システムの開始または再開始を中断します。この場合は,システムダウンした要因を取り除いてから,dcsetupコマンドで一度OSへの登録を削除して再登録するか,またはdcresetコマンドを入力してください。
システム環境定義のmode_confオペランドが「MANUAL2」の場合,プロセスサービスの連続ダウン以外はこのオペランドの指定は無効となります。
●prc_prf_trace=Y|N
~《Y》
プロセスサービスのイベントトレースを取得するかどうかを指定します。
このオペランドでYを指定した場合,プロセスサービスの動作を検証するためのイベントトレースが取得されます。イベントIDの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。
イベントトレースは次に示すファイルに取得されます。
イベントトレースのうち,プロセスの生成と消滅については次に示すタイミングで情報が取得されます。
prfedコマンド実行時に-dオプションを指定すると,1.では生成したプロセスのサーバ名を,2.では消滅したIDとその終了状態を,また3.では生成したプロセスIDを,表示されるデータとして取得します。したがって,取得したトレース情報をprfedコマンドで出力する場合は,-dオプションを指定してください。-dオプションを指定すると次のようにトレース情報が出力されます。
Offset +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f ASCII_code
+0000 aa aa aa aa aa aa aa aa AAAAAAAA
Offset +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f ASCII_code
+0000 bb bb bb bb cc cc cc cc BBBBCCCC
Offset +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +a +b +c +d +e +f ASCII_code
+0000 dd dd dd dd DDDD
prfedコマンドの詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。
なお,システム共通定義のprf_traceオペランドにNを指定した場合,このオペランドの指定は無効となります。
●prc_coresave_path=コアファイル格納パス
~〈パス名〉《$DCDIR/spool/save》
OpenTP1プロセスのコアファイルを格納するディレクトリを絶対パス名で指定します。
ユーザサーバの場合は,UAPトレース編集結果もこのオペランドで指定したディレクトリに格納されます。
パス名に指定できる文字数は,最大63文字です。
このオペランドで指定したパス名に誤りがある場合や,このオペランドの指定を省略した場合は,コアファイルの格納先に$DCDIR/spool/saveを仮定します。
OpenTP1管理者は,このオペランドで指定したディレクトリにコアファイルを書き込める権限を持っている必要があります。そうでない場合は,コアファイルが書き込まれないことがあります。
プロセスサーバのコアファイルの場合は,このオペランドの指定に関係なく,$DCDIR/spool/saveに出力されることがあります。
このオペランドの指定値を変更した場合は,dcresetコマンドを実行する必要があります。
●prc_corecompress=Y|N
~《N》
OpenTP1プロセスのコアファイルの格納時にOpenTP1で自動的に圧縮するかどうかを指定します。
このオペランドの指定を省略した場合は,圧縮しません。
圧縮処理は,OSが標準提供するコマンドを使用して,OpenTP1がオンライン中にUAPがダウンした場合などに行います。そのため,このオペランドでYを指定した場合で,UAPがダウンしたときは,OSが標準提供する圧縮処理用コマンドの性能に依存して,全体の性能が低下することがあります。
このオペランドでYを指定した場合,コアファイルを格納するディレクトリに,圧縮処理前のファイル名が付いた0バイトのファイルが作成されます。このファイルは,退避した情報ファイルの世代管理に使用することがあるため,削除しないでください。
このオペランドの指定値を変更した場合は,dcresetコマンドを実行する必要があります。
●watch_time=最大応答待ち時間
~〈符号なし整数〉((0~65535))(単位:秒)
RPCによってプロセス間で通信する場合,サービス要求を送ってからサービスの応答が返るまでの待ち時間の最大値を指定します。
OpenTP1の終了処理で,このオペランドで指定した時間だけ終了処理を待ち合わせる場合があります。したがって,大きな値を指定した場合,OpenTP1の終了処理に時間が掛かるときがあります。
指定時間を過ぎても応答がない場合は,RPCは送受信タイムアウトとしてエラーリターンします。
0を指定した場合は,応答を受信するまで待ち続けます。0を指定した場合,OpenTP1が終了しないときがあります。
省略した場合は,システム共通定義のwatch_timeオペランドの値を仮定します。
このオペランドは,システム共通定義のwatch_timeオペランドのデフォルト値で使用してください。
特別なチューニングを必要とする場合以外は,このオペランドの内容を変更しないことをお勧めします。
システム共通定義のwatch_timeオペランドのデフォルト値よりも,極端に小さな値または大きな値を指定すると,OpenTP1ダウンに至る障害が発生する場合がありますので,ご注意ください。
コマンド形式
次ページ以降に記述しています。