キューの属性

キュー定義には、5 つのタイプがあります。 キュー属性には、すべてのタイプのキューに適用される属性と、特定のタイプのキューにのみ適用される属性があります。

キューのタイプ

キュー・マネージャーは、 以下のタイプのキュー定義をサポートします。
ローカル・キュー
ローカル・キューにメッセージを格納できます。
[z/OS] z/OS® では、それを共用キューまたは専用キューにすることができます。

キューは、プログラムが接続されているキュー・マネージャーに所有される場合、プログラムではローカル と認知されます。 メッセージは、ローカル・キューから取得し、ローカル・キューに入れることができます。

キュー定義オブジェクトは、キューに入る物理メッセージと同様、そのキューの定義情報を保持します。

ローカル・キュー・マネージャーのキュー
このキューはローカル・キュー・マネージャー上に存在します。
[z/OS]キューは、 z/OSでは専用キューと呼ばれます。
[z/OS]共用キュー (z/OS のみ)
このキューは、共有リポジトリー内に存在しており、 その共有リポジトリーを所有するキュー共有グループに属する全キュー・マネージャーからアクセス可能です。

キュー共有グループ内のキュー・マネージャーに接続しているアプリケーションは、 このタイプのキューに対してメッセージを書き込んだり、メッセージを削除したりできます。 このようなキューは、実質的にはローカル・キューと同じです。 QTypeキュー属性の値は MQQ_ ローカル です。

ローカル・キュー・マネージャーに接続しているアプリケーションは、 このタイプのキューに対してメッセージを書き込んだり、メッセージを削除したりできます。 QTypeキュー属性の値は MQQ_ ローカル です。

クラスター・キュー

クラスター・キューが定義されているキュー・マネージャーでは、クラスター・キューにメッセージを格納できます。 クラスター・キューとは、クラスター・キュー・マネージャーでホストされ、同じクラスター内の別のキュー・マネージャーで使用できるキューです。 QType キュー属性の値は MQQT_CLUSTERです。

クラスター・キュー定義は、クラスター内の他のキュー・マネージャーに通知されます。 クラスター内にあるその他のキュー・マネージャーは、対応するリモート・キュー定義がなくても、クラスター・キューにメッセージを書き込むことができます。 クラスター名前リストを使用して、クラスター・キューを複数のクラスターに通知できます。

キューが通知されると、クラスター内のキュー・マネージャーはそのキューにメッセージを書き込めるようになります。 メッセージを書き込むときには、キュー・マネージャーが、フルリポジトリーで、そのキューがホストされている場所を調べる必要があります。 格納場所が分かったら、宛先情報をメッセージに追加して、クラスター伝送キューにメッセージを書き込みます。

キュー・マネージャーは、同じクラスター内の他のキュー・マネージャーのメッセージを複数の伝送キューに格納することができます。 複数のクラスター伝送キューにメッセージを格納するようキュー・マネージャーを構成する方法は 2 つあります。 キュー・マネージャー属性 DEFCLXQCHANNELに設定すると、クラスター送信側チャネルごとに異なるクラスター伝送キューが、SYSTEM.CLUSTER.TRANSMIT.MODEL.QUEUE から自動的に作成されます。 CLCHNAME 伝送キュー・オプションを 1 つ以上のクラスター送信側チャネルに一致するように設定すると、キュー・マネージャーは、一致しているチャネルのメッセージを、そのチャネルの伝送キューに格納できます。
重要: IBM® WebSphere® MQ 7.5より前のバージョンの製品からアップグレードされたキュー・マネージャーで専用の SYSTEM.CLUSTER.TRANSMIT.QUEUES を使用している場合、 SYSTEM.CLUSTER.TRANSMIT.MODEL.QUEUESHARE/NOSHARE オプションが SHAREに設定されていることを確認してください。

[z/OS]クラスター・キューは、 IBM MQ for z/OSでのキュー共用グループのメンバーによって共用されるキューにすることができます。

リモート・キュー
リモート・キューは物理的なキューではありません。 リモート・キュー・マネージャー上に存在するキューのローカル定義です。 リモート・キューのローカル定義には、 リモート・キュー・マネージャーにメッセージを経路指定する方法を、 ローカル・キュー・マネージャーに示す情報が入っています。

ローカル・キュー・マネージャーに接続しているアプリケーションは、 このタイプのキューにメッセージを書き込むことができます。 そのメッセージは、リモート・キュー・マネージャーにメッセージを経路指定するために使用されるローカル伝送キューに入れられます。 アプリケーションは、リモート・キューからメッセージを除去することはできません。 QTypeキュー属性の値は MQQT_REMOTE です。

リモート・キューの定義は、次の用途にも使用できます。
別名キュー
これは物理的なキューではありません。ローカル・キュー、 共有キュー、クラスター・キュー、またはリモート・キューの代替名です。 別名から解決されるキューの名前は、 別名キューの定義内に含まれています。

ローカル・キュー・マネージャーに接続しているアプリケーションは、 このタイプのキューにメッセージを書き込むことができます。 そのメッセージは、別名から解決されたキューに入れられます。 アプリケーションがこのタイプのキューからメッセージを削除できるのは、 別名が、ローカル・キュー、共有キュー、 またはローカル・インスタンスを持つクラスター・キューに解決された場合です。 QTypeキュー属性の値は MQQT_ALIAS です。

モデル・キュー
これは、物理的なキューではありません。キュー属性の 1 セットであり、 これを基にしてローカル・キューを作成することができます。

このタイプのキューには メッセージを保管できません。

[V8.0.0.15 2020 年 6 月]

キューの制限

バージョン 8.0.0フィックスパック 15以降、キュー・マネージャーは、デフォルトで最大キュー・ファイル・サイズを 2 TB に制限します。

キューの属性

キュー属性には、すべてのタイプのキューに適用される属性と、特定のタイプのキューにのみ適用される属性があります。 属性が適用されるキューのタイプを 表 1 および後続の表に示します。
表 1 は、キューに固有の属性を要約したものです。 属性の説明は、アルファベット順に掲載しています。
注: このセクションに示されている属性の名前は、 MQINQ 呼び出しおよび MQSET 呼び出しで使用される記述名です。これらの名前は PCF コマンドの場合と同じです。 MQSC コマンドを使用して属性を定義、変更、または表示する場合、代替ショート・ネームが使用されます。詳しくは、 スクリプト (MQSC) コマンド を参照してください。
表 1. キューの属性。 各列は、以下のように適用されます。
  • ローカル・キューの列は、共有キューにも適用されます。
  • モデル・キューの列は、そのモデル・キューを基にして作成された ローカル・キューに継承される属性を示しています。
  • クラスター・キューの列は、 照会のみ、または照会と出力を目的としてクラスター・キューがオープンされた場合に 照会できる属性を示しています。 その他の属性を照会すると、呼び出しは完了コード MQCC_WARNING および理由コード MQRC_SELECTOR_NOT_FOR_TYPE (2068) を返します。

    照会に加えて、 入力、ブラウズ、または設定のうち 1 つ以上の作業を目的としてクラスター・キューがオープンされた場合は、 代わりにローカル・キューの列が適用されます。

    クラスター・キューが照会だけでオープンされている場合、または照会と出力のために基本キュー・マネージャー名を指定した場合は、ローカル・キューの列が代わりに適用されます。

属性 説明 ローカル モデル 別名 リモート クラスター
AlterationDate 定義が最後に変更された日付 X   X X  
AlterationTime 定義が最後に変更された時刻 X   X X  
BackoutRequeueQName 超過バックアウト再キューイング用のキュー名 X X      
BackoutThreshold バックアウトしきい値 X X      
BaseQName 別名が解決されるキュー名     X    
CFStrucName カップリング・ファシリティー構造体の名前 X X      
CLCHNAME クラスター送信側チャネル名 X X      
ClusterName キューが属するクラスターの名前 X   X X X
ClusterNamelist キューが属するクラスターの名前を含む名前リスト・オブジェクトの名前 X   X X  
CLWLQueuePriority クラスター・ワークロード・キューの優先順位 X   X X X
CLWLQueueRank クラスター・ワークロード・キューのランク X   X X X
CLWLUseQ リモート・キューの使用 X        
CreationDate キューが作成された日付 X        
CreationTime キューが作成された時刻 X        
CurrentQDepth 現行キュー項目数 X        
DefaultPutResponse デフォルトの書き込み応答 X X X X  
DefBind デフォルトのバインド X   X X X
DefinitionType attribute キュー定義タイプ X X      
DefInputOpenOption デフォルト入力オープン・オプション X X      
DefPersistence デフォルトのメッセージ持続性 X X X X X
DefPriority デフォルトのメッセージ優先順位 X X X X X
DefReadAhead デフォルト先読み X X X    
DistLists 配布リスト・サポート X X      
HardenGetBackout 正確なバックアウト・カウントを維持するかどうか X X      
IndexType 索引タイプ X X      
InhibitGet キューに対する取得 (GET) 操作を許可するかどうか X X X    
InhibitPut キューに対する書き込み (PUT) 操作を許可するかどうか X X X X X
InitiationQName 開始キューの名前 X X      
MaxMsgLength メッセージの最大長 (バイト数)。 X X      
MaxQDepth キューの最大長 X X      
MsgDeliverySequence attribute メッセージ・デリバリー・シーケンス X X      
NonPersistentMessage Class 非持続メッセージの信頼性に関する目標 X X      
OpenInputCount 入力のためのオープンの回数 X        
OpenOutputCount 出力のためのオープンの回数 X        
PropertyControl プロパティー制御 X X X    
ProcessName プロセス名 X X      
QDepthHighEvent attribute キュー項目数高イベントが生成されるかどうかの指定 X X      
QDepthHighLimit キュー・サイズの上限 X X      
QDepthLowEvent attribute キュー項目数低イベントが生成されるかどうかの指定 X X      
QDepthLowLimit attribute キュー・サイズの下限 X X      
QDepthMaxEvent キュー満杯イベントが生成されるかどうか X X      
QDesc キューの記述 X X X X X
QName キュー名 X   X X X
QServiceInterval キュー・サービス間隔の目標値 X X      
QServiceIntervalEvent attribute サービス間隔上限イベントまたは サービス間隔 OK イベントが生成されるかどうか X X      
QSGDisp attribute キュー共有グループ後処理 X   X X  
QueueAccounting キュー・アカウンティング・データの収集 X X X X X
QueueMonitoring キューのオンライン・モニター・データ。 X X      
QueueStatistics キュー統計データの収集 X X X X X
QType キュー・タイプ X   X X X
RemoteQMgrName リモート・キュー・マネージャーの名前       X  
RemoteQName リモート・キューの名前       X  
RetentionInterval 保存間隔 X X      
Scope キューに関する項目が セル・ディレクトリーにも存在するかどうか X   X X  
Shareability キューの共有可能性 X X      
StorageClass キューのストレージ・クラス X X      
TriggerControl トリガー制御 X X      
TriggerData トリガー・データ X X      
TriggerDepth トリガー項目数 X X      
TriggerMsgPriority トリガーのしきい値メッセージ優先順位 X X      
TriggerType トリガー・タイプ X X      
Usage attribute キューの使用法 X X      
XmitQName 伝送キュー名       X