mqainit(キューファイルの割り当て)
形式
機能
キューに登録したメッセージを格納するためのファイル(キューファイル)を割り当てます。
このコマンドで割り当てるキューファイルは,メッセージの管理情報を格納するメッセージ情報管理ファイルとメッセージ本体を格納するメッセージファイルの二つで構成されます。それぞれキューファイル名.cntとキューファイル名.msgの名前が付けられ,一つのOpenTP1ファイルシステム上に作成されます。
作成されるキューファイルのファイルの構造について,次の図に示します。
図6-2 キューファイルの構造
オプション
● -r
指定したファイルがすでにあり,再びキューファイルを割り当てる場合に指定します。このオプションの指定を省略すると,指定したファイルがすでにあった場合にエラーになります。
また,このオプションを指定する場合,既存のキューファイルは削除されません。そのため,新しいキューファイルを作成するだけの空き容量が確保されていることを確認してください。空き容量がない場合,KFCA04384-Eメッセージが出力されます。
● -q キュー数
~((1~20480))《32》
指定したキューファイルに登録するキューの最大数を指定します。
キュー数に20480を指定した場合,メッセージ数とメッセージ長は,それぞれ最大値を指定できません。指定値は,-sオプションの説明で示されている計算式で算出してください。
キュー数には,一時的および永続的なキューを合わせた数を指定してください。
● -m メッセージ数
~((1~1048560))《4096》
指定したキューファイルに登録するメッセージの最大数を指定します。
メッセージ数には,非永続性および永続性のメッセージを合わせた数を指定してください。
登録するメッセージのメッセージ長が-sオプションで指定した値より大きい場合,実際に登録できるメッセージ数は,このオプションで指定した値より少なくなります。
● -s メッセージ長
~((1~128000000))《100000》(単位:バイト)
指定したキューファイルに登録するメッセージの平均メッセージ長を指定します。この場合,指定した値を基にキューファイルのレコード長が決定されます。
レコード長の計算式を次に示します。
このオプションで指定した値より長いメッセージの登録もできます。ただし,その場合一つのメッセージで複数のレコードを使用するため,-mオプションで指定したメッセージ数より,実際に登録できるメッセージ数は少なくなります。最大で幾つのレコードを使用するかは,MQAサービス定義のmqa_max_msg_recnumオペランドで指定できます。
MQAサービスでは,1レコードに複数のメッセージは格納しないため,メッセージ長が極端に異なるメッセージを一つのキューに格納すると媒体効率が低下します。このような場合,メッセージを登録するキューを分け,キューを格納するキューファイルグループも分けると媒体効率が向上します。
また,転送キューを作成するキューファイルを割り当てるときには,付加情報(MQXQH構造体)の長さを考慮した値を指定してください。
コマンド引数
● キューファイル名
~<1~59文字の文字列>
キューファイルとして割り当てるファイル名を完全パス名で指定します。
キューファイル名に指定している最後の"/"以降の文字列長を10文字以内としてください。
キューファイルパス名およびキューファイル名にスペースを指定しないでください。また,ファイルパス名の"/"個所に"/"を追加したキューファイルパス名を指定しないでください。指定した場合,動作は保証されません。
注意事項