mqttcpcr(クラスタレシーバTCP構成定義)
形式
mqttcpcr -p tcp -g "rcvbuf = 受信バッファグループ番号" -r "〔portno = 自システムのポート番号〕 〔servname = 自システムのサービス名〕" 〔-v "〔stim = チャネル要求監視間隔〕 〔etim = 終了処理監視タイマ値〕 〔rtim = 開始要求受信監視タイマ値〕"〕 〔-t "〔disk = yes|no〕 〔bufcnt = バッファ格納個数〕 〔trccnt = トレースファイル個数〕 〔bufsize = トレースバッファサイズ〕"〕
機能
クラスタレシーバプロセスのTCP/IPプロトコルについての構成を定義します。
オプション
● -p tcp
プロトコル種別を指定します。
tcp:TCP/IPプロトコル
● -g
(オペランド)
● -r
(オペランド)
- ・portno=自システムのポート番号
-
〜<符号なし整数>((1024〜65535))
開始要求を受信する自システムのポート番号を指定します。この指定値は,相手システムからのネットワークリクエストを受けるために使用されます。
このオプションのservnameオペランドを指定した場合,この指定値は省略できます。省略した場合,あらかじめサービス名ファイルにサービス名が登録されている必要があります。
portnoオペランドとservnameオペランドを両方とも指定した場合は,portnoオペランドの指定値が優先されます。
- ・servname=自システムのサービス名
-
〜<1〜32文字の識別子(ハイフン(-)を含む)>
自システムのサービス名を指定します。この指定値は,相手システムからのネットワークリクエストを受けるために使用されます。
このオプションのportnoオペランドに指定がある場合,この指定値は省略できます。
サービス名は,サービス名ファイルに次に示す形式で登録します。
portnoオペランドとservnameオペランドを両方とも指定した場合は,portnoオペランドの指定値が優先されます。
- 注意事項
-
-
portnoオペランドにはMQTサーバが動作するシステム内で使用しないポート番号(OSが自動割り当てするポート番号の範囲外で,かつほかのプログラムが使用しない番号)を指定してください。
-
servnameオペランドにはMQTサーバが動作するシステム内で使用しないサービス名(サービス名に関連づけられたポート番号を考慮)を指定してください。
-
-rオプションで指定したポート番号またはサービス名に関連づけられたポート番号が,ほかの通信プログラムで使われている状態でMQTサーバを起動すると,通信障害(TCP/IPエラー,不正データ受信)になることがあります。なお,ポート番号には,OSが自動割り当てする番号があります。OSが自動割り当てするポート番号は,OSの種別やOSのバージョンなどによって異なります。詳細は,OSのマニュアルを参照してください。
-
● -v
(オペランド)
- ・stim=チャネル要求監視間隔
-
〜<符号なし整数>((1〜65535))《5》(単位:秒)
チャネル要求監視間隔を指定します。チャネル要求監視の詳細については,「2.5.3 チャネル要求監視」を参照してください。
- 注意事項
-
stimオペランドは,次の動作に影響を与えます。このためstimオペランドの値を大きくした場合,クラスタレシーバチャネルに対する処理が遅れるときがあります。
-
次に示す場合,リポジトリ管理サーバが,stimオペランドの指定値の間,一時的に動作できないことがあります。
・リポジトリ管理サーバを再起動した場合
・リポジトリ情報を再作成した場合
-
- ・etim=終了処理監視タイマ値
-
〜<符号なし整数>((0,10〜65535))《360》(単位:秒)
終了処理監視タイマ値を指定します。0を指定した場合,終了処理は監視されません。
- 注意事項
-
etimオペランドを指定する場合は,次に示す条件を考慮してください。
-
すべてのMQTサーバのTCP定義(mqttcp定義コマンド,mqttcpcs定義コマンド,mqttcpcr定義コマンド)で指定するetimオペランドの指定値の合計が,OpenTP1のシステム環境定義のsystem_terminate_watch_timeオペランドの指定値よりも小さくなるように0以外の値を指定してください。この条件を満たさない場合,dcstopコマンドを入力したあとに,OpenTP1が強制停止することがあります。
-
「チャネル動作中」でバッチ処理を行っている場合にdcstopコマンドを入力するときは,バッチ処理時間よりも大きい値をetimオペランドに指定してください。バッチ処理時間よりも小さい値をetimオペランドに指定した場合,送達未確認状態や転送メッセージの消滅(ファーストメッセージの場合)が発生することがあります。バッチサイズ,転送メッセージ長,およびバッチインターバルを考慮してください。
-
「チャネル動作中」でバッチ処理を行っていない場合にdcstopコマンドを入力するときは,ハートビート間隔よりも大きい値をetimオペランドに指定してください。ハートビート間隔よりも小さい値をetimオペランドに指定した場合は,相手システムが異常(TCP/IPエラーやタイムアウト)を検出することがあります。
-
「チャネル動作中」のチャネルが存在しない場合にdcstopコマンドを入力するときは,MQTサーバの終了を監視する時間をetimオペランドに指定してください。
-
- ・rtim=開始要求受信監視タイマ値
-
〜<符号なし整数>((0〜65535))《60》(単位:秒)
開始要求受信監視タイマ値を指定します。このオペランドに0を指定した場合,開始要求受信監視はしません。
● -t
(オペランド)
- ・disk=yes|no
-
〜《yes》
MQTトレースのディスク出力機能を使用するかどうかを指定します。
yes:ディスク出力機能を使用します(メモリおよびディスクに出力)。
no:ディスク出力機能を使用しません(メモリだけに出力)。
noを指定した場合,トレースファイルは作成されないでメモリ上の二つのバッファが交互に使用されます。また,このオプションのbufcntおよびtrccntオペランドの指定値は無効になります。
yesを指定,または省略した場合,MQTトレースは,MQTサーバが提供する次に示すファイルに格納されます。
-
MQTサービス定義のmqt_trace_file_pathオペランドを指定している場合
ファイル名:mqt_trace_file_pathオペランドの指定値/mqttrcXXYY
-
MQTサービス定義のmqt_trace_file_pathオペランドを指定していない場合
ファイル名:$DCDIR/spool/mqttrcXXYY
- (凡例)
-
XX:MQT通信プロセス識別子
YY:トレーススワップファイル識別子
なお,MQTサーバで障害が発生し,保守員に調査を依頼する場合,このトレースが必要になります。そのため,常にトレースをディスクに出力して運用することをお勧めします。
-
- ・bufcnt=バッファ格納個数
-
〜<符号なし整数>((10〜2147483647))《2500》
MQTトレースファイルのサイズを指定します。バッファを何面分格納できる容量にするかを個数単位で指定します。トレースファイルのサイズの算出式を次に示します。
トレースファイルサイズ = バッファ格納個数×
トレースバッファサイズ(-t bufsizeオペランド指定値)
- ・trccnt=トレースファイル個数
-
〜<符号なし整数>((3〜99))《3》
MQTトレースファイルの個数を指定します。トレースファイルは,必要に応じて作成されますが,この指定値を超えると,最も古いトレースファイルが上書きされます。
- ・bufsize=トレースバッファサイズ
-
〜<符号なし整数>((20480〜128000000))《20480》(単位:バイト)
MQTトレースを格納するバッファの大きさを指定します。4の倍数でない値を指定した場合は,4の倍数に切り上げられます。
- 注意事項
-
MQTトレースのディスク出力はトレースバッファサイズ単位に行われ,ディスク出力が完了するまではチャネルの動作が一時的に停止します。そのため,バッファサイズを設定するときは次に示す点を配慮してください。
-
値が大きい場合:
ディスク出力回数は少なくなりますが,ディスク出力時間(チャネルの停止時間)は長くなります。
-
値が小さい場合:
ディスク出力時間(チャネルの停止時間)は短くなりますが,ディスク出力回数は多くなります。
-