Hitachi

OpenTP1 Version 7 OpenTP1 メッセージキューイング機能 TP1/Message Queue 使用の手引


付録E 用語解説

TP1/Message Queueで使用する用語について説明します。

(英字)

FAP

米国International Business Machines Corporationによって策定され,MCPに関するフォーマットとプロトコル(FAP:Format and Protocols)が定義されたものです。

IBM MQ

米国IBM社が開発した,メッセージ蓄積型の通信を実現する製品群のことです。OpenTP1では,TP1/Message Queueを使ってメッセージ蓄積型の通信を実現できます。

MCP

TCP/IPプロトコル上で動作するメッセージチャネルプロトコル(MCP)のことです。メッセージを送受信するためのチャネルの機能を提供します。

MQシステム

メッセージキューイング機能のキューマネジャがあるシステムのことです。

(ア行)

アプリケーション

目的の業務に応じてユーザが作成するプログラムのことです。TP1/Message Queueの機能を利用するアプリケーションは,OpenTP1のUAPとして作成します。

オブジェクト

アプリケーションがメッセージキューイング機能の命令で利用する対象のことです。キュー,キューマネジャなどがあります。

(カ行)

キューファイル

メッセージキューを格納するファイルのことです。一つのキューファイルに,複数のキューが格納されます。

キューマネジャ

メッセージキューイング機能を管理するソフトウェア製品のことです。メッセージキューイング機能を使って通信するシステムには,キューマネジャが必要になります。OpenTP1の場合は,TP1/Message Queueがキューマネジャの役割をします。

クラスタ

クラスタは,何らかの方法によって論理的に関連づけられたキューマネジャのネットワークです。クラスタに属しているキューマネジャは,それぞれが物理的にリモートであることもあります。世界的なチェーンストアをクラスタに例えて,キューマネジャをチェーンストアの支店に例えると,それぞれの支店同士は,物理的に別々の国にあることもあります。一つの企業内の各クラスタは,ユニークな名前を持っていなければなりません。

クラスタキュー

クラスタキューは,クラスタキューマネジャが保持し,クラスタのほかのキューマネジャが利用できるキューです。クラスタキューマネジャでは,ローカルなキューを作成し,キューを使用できるクラスタの名前を指定します。この指定は,クラスタのほかのキューマネジャにキューの存在を通知する効果を持ちます。

クラスタのほかのキューマネジャは,対応するリモートキューのローカル定義なしで,クラスタキューにメッセージを登録できます。クラスタキューは,複数のクラスタに通知されることもあります。

クラスタキューマネジャ

クラスタキューマネジャは,クラスタのメンバであるキューマネジャです。キューマネジャは,複数のクラスタのマネジャになることもできます。各クラスタキューマネジャは,自分がメンバであるすべてのクラスタでユニークな名前を持っていなければなりません。

クラスタキューマネジャは,クラスタのほかのキューマネジャに通知するキューを保持できます。クラスタキューマネジャは,すべてのキューを保持したり,通知したりする必要はありません。メッセージをクラスタに提供し,通知されるキューにではなく,明示的にそのクラスタに向けられた応答だけを受信します。

クラスタキューマネジャは自律的です。自分が定義しているキューやチャネルを全面的にコントロールします。その定義をほかのキューマネジャは変更できません。キューマネジャでの定義を作成または変更する場合には,フルリポジトリキューマネジャに情報を送信し,それに従ってクラスタのリポジトリが更新されます。

クラスタセンダチャネル

クラスタセンダ(CLUSSDR)チャネル定義は,クラスタキューマネジャがフルリポジトリの一つにクラスタ情報を送信できるチャネルの送信端を定義しています。クラスタセンダチャネルを使用して,キューマネジャの状態の変更(例えば,キューの追加や削除)をリポジトリに通知します。また,メッセージを転送するのにも使用されます。

フルリポジトリキューマネジャ自身は,相互にポイントしているクラスタセンダチャネルを持っています。これを使用して,クラスタ状態の変更を相互に伝達します。

キューマネジャのクラスタセンダチャネル定義がどのフルリポジトリをポイントしているかは,ほとんど問題になりません。最初のコンタクトが実行されれば,クラスタセンダチャネルが自動的に定義されるので,キューマネジャはどのフルリポジトリへもクラスタ情報を送信でき,どのキューマネジャへもメッセージを送信できます。

クラスタ転送キュー

各クラスタキューマネジャは,SYSTEM.CLUSTER.TRANSMIT.QUEUEというクラスタ転送キューを持っています。クラスタ転送キューは,キューマネジャからのすべてのメッセージを,同じクラスタにあるほかのキューマネジャに送信します。

クラスタレシーバチャネル

クラスタレシーバ(CLUSRCVR)チャネル定義は,クラスタキューマネジャがクラスタのほかのキューマネジャからメッセージを受信できるチャネルの受信端を定義しています。また,クラスタレシーバチャネルは,クラスタについての情報(リポジトリに向けられた情報)を通信することもできます。クラスタレシーバチャネルの定義は,キューマネジャがメッセージを受信できることを,クラスタのほかのキューマネジャに通知する効果を持ちます。各クラスタキューマネジャに少なくとも一つのクラスタレシーバチャネルが必要です。

(サ行)

サービス名ファイル

サービス名称とポート番号とを対応づけたファイルです。標準的なパス名を次に示します。

  • UNIXの場合

    /etc/services

  • Windowsの場合

    C:\WINDOWS\system32\drivers\etc\services

属性

オブジェクトに対応づけられた名称,タイプなど,オブジェクトの特性を示すものです。オブジェクトの種類によって,対応づけられる属性は異なります。

(タ行)

チャネル

自システムと特定のMQシステムとの間に対応づけた論理的な通信路のことです。メッセージチャネルエージェントによって管理されます。

トリガ

メッセージキューにメッセージが到着したことを自システムのアプリケーションに知らせる機能のことです。トリガイベントを監視するアプリケーションをトリガモニタアプリケーションといいます。

(ハ行)

ハートビートメッセージ

送信側MCAの転送キューにメッセージがない場合,送信側MCAが受信側MCAに対して一定間隔で送受信するメッセージです。

バインディング

複数のキューマネジャが,同じクラスタキューの1インスタンスを保持するクラスタを作成できます。その場合には,連続するメッセージがすべてキューの同じインスタンスに送信されるようにしてください。MQOPEN命令でMQOO_BIND_ON_OPENオプションを使用して,特定のキューに連続するメッセージをバインドできます。

フルリポジトリキューマネジャ

フルリポジトリキューマネジャとは,フルリポジトリを保持しているクラスタキューマネジャです。可用性を確保するために,各クラスタで二つ以上のキューマネジャを選択してフルリポジトリを確保するようお勧めします。フルリポジトリキューマネジャは,クラスタのほかのキューマネジャが送信した情報を受信し,それに従ってフルリポジトリを更新します。フルリポジトリキューマネジャは,クラスタについての情報を最新状態に保つために,相互にメッセージを送信します。

フルリポジトリとパーシャルリポジトリ

フルリポジトリキューマネジャは,クラスタのすべてのキューマネジャについての完全な情報を保持します。この情報をクラスタのフルリポジトリといいます。

クラスタのほかのキューマネジャは,フルリポジトリに情報を照会し,パーシャルリポジトリにその情報のサブセットを構築します。キューマネジャのパーシャルリポジトリは,相互にメッセージを交換する必要があるキューマネジャについての情報だけを含んでいます。キューマネジャは自分が必要とする情報についての更新を要求し,その情報が変更されている場合,フルリポジトリキューマネジャは,新しい情報を送信します。ほとんどの場合,あるキューマネジャのパーシャルリポジトリは,クラスタ内で実行するために必要なすべての情報を持っています。追加情報が必要になると,キューマネジャはフルリポジトリに問い合わせて,自分のパーシャルリポジトリを更新します。キューマネジャは,リポジトリに対して更新を要求したり,更新を受信したりするために,SYSTEM.CLUSTER.COMMAND.QUEUEというキューを使用します。

ホスト名ファイル

ホスト名称とIPアドレスとを対応づけたファイルです。標準的なパス名を次に示します。

  • UNIXの場合

    /etc/hosts

  • Windowsの場合

    C:\WINDOWS\system32\drivers\etc\hosts

(マ行)

命令

アプリケーションからメッセージキューイング機能を利用するためのインタフェースのことです。C言語では関数,COBOL言語ではCALL文で呼び出すプログラムに相当します。

メッセージキュー

メッセージキューイング機能を使った通信をする場合に,メッセージを格納するために使用するキューのことです。メッセージキューに登録したメッセージは,キューマネジャによって通信相手に送信されます。

メッセージキューイング機能

米国IBM社が開発した,メッセージ蓄積型の通信手順のことです。メッセージキューイング機能を使った通信では,アプリケーションが登録したメッセージをキューマネジャが送受信するため,システム間の通信手順や通信障害時の処理をアプリケーションで意識しなくて済みます。また,通信相手のアプリケーションが稼働している必要がないため,アプリケーションの構造を簡単にできます。アプリケーションからキューへのアクセスには,IBM MQ標準のAPIを使用します。

メッセージチャネルエージェント

キューからキューへメッセージを送信するプログラムのことです。送信側と受信側にそれぞれあり,対で動作します。メッセージチャネルエージェントには,送信側か受信側か,呼び出し側かそれを受ける側かなどによって,四つのチャネルタイプがあります。

(ラ行)

リポジトリ

リポジトリは,クラスタのメンバであるキューマネジャについての情報の集まりです。この情報には,キューマネジャの名前,その位置,チャネル,および保持するキューなどが含まれます。情報はSYSTEM.CLUSTER.REPOSITORY.QUEUE(TP1/Message Queueの場合,ユーザが作成するキュー)というキューにメッセージの形で保存されます。通常,一つクラスタ内で二つのキューマネジャがフルリポジトリを保持し,ほかのキューマネジャは,パーシャルリポジトリを保持します。

TP1/Message Queueがサポートするのは,パーシャルリポジトリだけです。IBM MQのキューマネジャがフルリポジトリを保持するクラスタに参加することになります。