Hitachi

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


2.3.2 MCAのチャネルタイプ

チャネルを制御するMCAには幾つかのチャネルタイプがあります。チャネルタイプが異なるとチャネルを制御するMCAの動作も異なります。

TP1/Message QueueがサポートするチャネルタイプとMCAの動作について,次に示します。チャネルタイプはTCP定義のmqtalccha定義コマンドで指定します。

センダ(sender)

通信相手システムのレシーバまたはリクエスタをチャネル開始要求で起動し,メッセージを転送キューから取り出してレシーバまたはリクエスタに送信します。通信相手システムのリクエスタから起動された場合は,センダから起動をし直します。

レシーバ(receiver)

通信相手システムのセンダまたはサーバからのチャネル開始要求で起動され,センダまたはサーバからのメッセージを受信します。受信後,メッセージに指定されたあて先キューへ登録します。

リクエスタ(requester)

通信相手システムのセンダまたはサーバをチャネル開始要求で起動し,センダまたはサーバのチャネル定義で指定された転送キューからのメッセージを受信します。受信後,メッセージに指定されたあて先キューへ登録します。センダまたはサーバからのチャネル開始要求によって起動することもできます。

サーバ(server)

通信相手システムのリクエスタからチャネル開始要求で起動され,メッセージを転送キューから取り出して,レシーバまたはリクエスタに送信します。通信相手システムを設定すると,レシーバまたはリクエスタをチャネル開始要求で起動できます。

クラスタセンダ(clussdr)

クラスタ機能で使用する送信側のチャネルタイプです。TCP定義のmqtalccha定義コマンドで指定する事前定義クラスタセンダと,接続相手のクラスタレシーバの属性に応じてTP1/Message Queueが自動的に作成する自動定義クラスタセンダがあります。詳細については,「2.8 キューマネジャクラスタの機能」を参照してください。

クラスタレシーバ(clusrcvr)

クラスタ機能で使用する受信側のチャネルタイプです。TCP定義のmqtalccha定義コマンドで指定する事前定義クラスタレシーバと,事前定義クラスタレシーバの属性でTP1/Message Queueが自動的に作成する自動定義クラスタレシーバ(チャネルインスタンス)があります。なお,事前定義クラスタレシーバには,実体はありません。詳細については,「2.8 キューマネジャクラスタの機能」を参照してください。

コーラ側MCAになることができるチャネルタイプは,センダ,サーバ,リクエスタ,またはクラスタセンダです。レスポンダ側MCAになることができるチャネルタイプは,センダ,サーバ,レシーバ,リクエスタ,またはクラスタレシーバです。チャネルは,コーラ側MCAとレスポンダ側MCAを1対1で組み合わせます。一つのMCAに複数のMCAを組み合わせると,メッセージが二重に送信されたり,欠落したりすることがあります。

チャネルタイプの組み合わせについて,次の表に示します。

チャネルタイプの組み合わせは,システム設計時の最も早期に決定する必要がある検討事項です。

表2‒4 チャネルタイプの組み合わせ

コーラ側MCAのチャネルタイプ

メッセージの送受信方向

レスポンダ側MCAのチャネルタイプ

センダ

レシーバ

センダ

リクエスタ

サーバ

リクエスタ

サーバ

レシーバ

リクエスタ

センダ

リクエスタ

サーバ

クラスタセンダ

クラスタレシーバ

(凡例)

→:コーラから送信します。

←:レスポンダから送信します。

注※

センダは,リクエスタからのネットワークリクエストに対して,いったんチャネルの終了を要求して,TCP/IPコネクションを解放します。その後,センダから再度コーラとしてチャネルを確立します。

クラスタチャネルでは一つのチャネル定義に対して複数のMCAを動作させるマルチインスタンス機能を持っています。詳細については,「2.8.9 クラスタ環境の通信構成」を参照してください。