8.3.17 hrmmkque(ローカルキューの作成)
- 〈この項の構成〉
(1) 形式
hrmmkque -t local 〔-m {persistent|non_persistent}〕 〔-d {serial|parallel|parallel_unit_order}〕 〔-n 最大メッセージ数〕 〔-c キャッシュメッセージ数〕 〔-e メッセージ有効期間〕 〔-w {sender|receiver}〕 〔-x 表示名〕 〔-r RDエリア名〕 〔-S システム名〕 キュー名
(2) 機能
指定されたキュー属性で,ローカルキューを作成します。
非永続版リソースアダプタの場合,キューはキュー作成ファイルの定義によって作成されます。キュー作成ファイルの詳細については,「3.5.1 キュー作成ファイルの作成」を参照してください。
(3) オプション
- -t local
- -m {persistent|non_persistent}
-
〜《persistent》
-
persistent:永続キュー属性
-
non_persistent:非永続キュー属性
各属性を指定したときのメッセージの処理については,「2.3.1 キューの永続性」を参照してください。
-
- -d {serial|parallel|parallel_unit_order}
-
〜《parallel》
-
serial:シリアル取り出し属性
-
parallel:パラレル取り出し属性
-
parallel_unit_order:パラレル取り出し属性(ただし,同一ユニット識別子の配信順序制御)
parallel_unit_orderを指定する場合は,-mオプションでnon_persistentを指定してください。指定しない場合は,エラーとなります。
各属性を指定したときのメッセージの処理については,「2.3.2 メッセージ取り出しモード」を参照してください。
-
- -n 最大メッセージ数
-
〜<数字>((1〜65535))《1024》
キューに格納するメッセージの最大数を指定します。
- -c キャッシュメッセージ数
-
〜<数字>((0〜65535))《最大メッセージ数》
キャッシュに格納するメッセージの数を指定します。
指定を省略した場合,-nオプションに指定する最大メッセージ数が設定されます。0を指定する場合,キャッシュにメッセージは格納されません。
このオプションに大きな値を指定する場合,メモリを消費しますがメッセージ受信の性能が向上します。小さい値を指定する場合,メモリの消費は抑えられますが,DBアクセス回数が増えることによってメッセージ受信の性能が低下します。
- -e メッセージ有効期間
-
〜<数字>((0〜2592000))《0》(単位:秒)
キューに格納するメッセージの有効期間を指定します。
0を指定する場合,メッセージの有効期間は無限です。
有効期間を指定するときのメッセージの処理については,「2.3.5 メッセージの有効期間」を参照してください。有効期間に達すると,そのメッセージはデッドメッセージとして扱われます。
- -w {sender|receiver}
-
〜《sender》
転送キューからメッセージを受信する場合,メッセージの有効期間については,送信側の有効期間を使用するのか,または受信側で更新するのかを選択します。転送キューの詳細については,「8.3.20 hrmmkque(転送キューの作成)」を参照してください。
-
sender:送信側の有効期間
-
receiver:受信側の有効期間
receiverを指定した場合,-eオプションで指定した値がメッセージの有効期間となります。
-
- -x 表示名
-
〜<1〜64文字の英数字および_(アンダースコア)>
キューの表示名を指定します。表示名とは,アプリケーションがJNDIネーミングサービスからキューを取得するときの,キューの論理名のことです。
指定を省略した場合はコマンド引数で指定したキュー名と同じ名称を指定したものとみなされます。
指定した表示名と同じ名称を持つキューがすでに存在している場合,エラーとなります。詳細は「8.3.17(5) 注意事項」を参照してください。
- -r RDエリア名
-
〜<1〜30文字の識別子および空白>
メッセージ情報テーブルを格納するRDエリアの名前を指定します。
このオプションを指定する場合,メッセージ情報テーブルを格納するRDエリアをあらかじめ用意してください。HiRDBのRDエリアの作成については,マニュアル「HiRDB コマンドリファレンス」を参照してください。
このオプションを省略する場合,格納するRDエリアをHiRDBが決定します。HiRDBが決定するRDエリアについては,マニュアル「HiRDB SQLリファレンス」を参照してください。
なお,-mオプションで"non_persistent"を指定した場合またはDBにOracleを使用している場合,このオプションの指定値は無効になります。
- 注意
-
-
RDエリア名に空白を含む場合は,次のように指定してください。
Windowsの場合
引用符(")で囲んでください。
UNIXの場合
アポストロフィ(’)で囲み,さらにその外側を引用符(")で囲んでください。
-
RDエリア名は大文字と小文字が区別されます。
-
- -S システム名
-
〜<先頭が英字の1〜3文字の大文字英字または数字>
コマンドの操作対象となるシステム名(RMSystemNameプロパティ指定値)を指定します。
指定を省略した場合は,HRM_SYSTEM_NAME環境変数に指定したシステム名が設定されます。HRM_SYSTEM_NAME環境変数にもシステム名が指定されていないときはエラーが発生します。
(4) コマンド引数
- キュー名
-
〜<1〜20文字の識別子>
作成するキューの名前を指定します。
既存のキューの名前を指定した場合はエラーが発生します。
(5) 注意事項
-
コマンド引数に指定するキュー名は,英字の大文字と小文字が区別されません。英字の大文字と小文字の違いだけのキュー名がすでにある場合,エラーが発生します。
キュー定義ファイルを使用していない場合,-xオプションで指定したキューの表示名でJNDIネーミングサービスに登録されます。
キュー定義ファイルを使用している場合は,キュー定義ファイルの指定が優先され,-xオプションで指定した表示名でのJNDIネーミングサービスへの登録はされません。
キュー定義ファイルを使用してReliable Messagingを運用している場合,キュー定義ファイルを使用しないでReliable Messagingを再開始したときは,-xオプションで指定した表示名がJNDIネーミングサービスに登録されます。
キュー定義ファイルの使用有無の詳細については,「3.4.4 キュー定義ファイルの作成(永続版リソースアダプタの場合)」,または「3.5.2 キュー定義ファイルの作成(非永続版リソースアダプタの場合)」を参照してください。
-
-xオプションで表示名を指定しなくても,作成するキューのキュー名が,作成済みキューの表示名と重複した場合,キューの作成は失敗します。