メッセージキューイングの基本構成要素はメッセージとキューです。
メッセージはアプリケーションにとって意味のあるバイト文字列です。メッセージはアプリケーション間または同じアプリケーション内の異なる部分の間で情報を転送するために使用されます。アプリケーションは同じOS上または異なるOS上で動作します。
メッセージは次に示す二つの部分で構成されます。
メッセージ記述子の形式はWebSphere MQによって規定されます。詳細については,マニュアル「TP1/Message Queue プログラム作成リファレンス」を参照してください。
キューはメッセージを保存するために使用されるデータ構造体です。
各キューはキューマネジャに属します。キューマネジャは所属するキューを管理し,受信したメッセージを適切なキューへ保存します。メッセージは通常操作の一部として,アプリケーションプログラムやキューマネジャによってキューに登録されます。
キューマネジャが管理するキューの種類について,次の表に示します。
表2-1 キューの種類
キューの種類 | 説明 | 作成方法 | 使用方法 |
---|---|---|---|
ローカルキュー | アプリケーションがMQCONN命令を利用して接続するキューマネジャに属しているキューです。 | 次に示す2とおりの作成方法があります。
| あて先キュー イニシエーションキュー 応答キュー デッドレターキュー 転送キュー ベースキュー |
リモートキュー (リモートキューのローカル定義による) | アプリケーションがMQCONN命令を利用して接続するキューマネジャとは別のキューマネジャに属しているキューです。 | リモートキューのローカル定義で指定します。また,特に定義はなく,アプリケーションで指定する場合もあります。 | あて先キュー 応答キュー ベースキュー |
別名キュー | ローカルキューまたはリモートキューのローカル定義の別名です。 | 別名キューの属性定義で指定します。 | 別名キュー |
モデルキュー | 運用中に作成するキューの基になる属性を持つキューです。 | モデルキューの属性定義で指定します。 | モデルキュー |
TP1/Message Queueのキューの構造について,次の図に示します。
図2-1 TP1/Message Queueのキューの構造
キューの使用方法およびそのキューがローカルキューかリモートキューになるかについて,次の表に示します。表の項番は,図2-1の括弧の数字に対応します。
表2-2 キューの使用方法による分類
項番 | 使用方法 | 意味 | ローカルキュー | リモートキュー |
---|---|---|---|---|
1 | イニシエーションキュー | トリガメッセージを登録するキュー | ○ | × |
2 | 応答キュー | アプリケーションが応答メッセージを受け取るキュー | ○ | ○ |
3 | 転送キュー | 特定のリモートキューマネジャにメッセージを転送するキュー | ○ | × |
4 | デッドレターキュー | 障害などでキューに登録できなかったメッセージを登録するキュー | ○ | × |
5 | あて先キュー | メッセージのあて先になるキュー | ○ | ○ |
6 | モデルキュー | 属性が一時的動的キュー,永続的動的キューの基になるキュー | - | - |
7 | ベースキュー | 別名キューの基になるキュー | ○ | ○ |
8 | 別名キュー | キューに付けられた別名だけのキュー | - | - |
ローカルキューには,2とおりの作成方法があります。作成方法によって定義済みキューと動的キューに分けられます。
キューには,属性と呼ばれる特性があります。キューの属性には,キュー名,キュータイプ,取り出し許可などがあります。属性については,マニュアル「TP1/Message Queue プログラム作成リファレンス」を参照してください。
キューの属性の決定・変更方法を次に示します。