Hitachi

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


2.5.7 ハートビート機能

ハートビート機能とは,送信側MCAの転送キューにメッセージがない場合,受信側MCAに対して一定間隔でハートビートメッセージを送信し,受信側MCAの応答の有無によってお互いが正常に動作していることを確認する機能です。

特に受信側MCAはこのハートビートメッセージによって受信側の運用コマンドによるチャネル終了契機を送信側MCAに連絡できます。

ハートビート機能は,TP1/Message Queue 05-00以降でサポートされる機能です。相手システムでもハートビート機能がサポートされていることを確認してご利用ください。サポートの有無については該当製品のマニュアルを参照してください。

〈この項の構成〉

(1) ハートビートメッセージ送信の契機

ハートビートメッセージ送信の契機とMCAの動作について,次の図に示します。

図2‒35 ハートビートメッセージ送信の契機とMCAの動作

[図データ]

  1. 送信側MCAは,転送キューにメッセージがないか確認します。転送キューにメッセージがある場合は,メッセージ送信を開始します。

  2. 転送キューにメッセージがなく,次に示す条件が満たされている場合,送信側MCAはハートビートメッセージを送信します。

    前回のバッチまたはハートビート送信完了からの経過時間 ≧ ハートビート間隔

  3. 受信側MCAは,ハートビートメッセージを受信すると,ハートビートメッセージへの応答を送信側MCAに返信します。

    この時,受信側MCAがmqtstpchaコマンド(またはdcstopコマンド)によるチャネルの正常終了処理中だった場合,受信側MCAはハートビートメッセージへの応答に加えてチャネルの終了要求を返信し,終了します。

  4. 送信側MCAは,次に示すどれかの条件を満たした場合,チャネルを終了します。

    • チャネル終了を要求するコマンドを受け付けた場合

    • タイマ方式の転送キュー監視で転送キュー監視回数を超えた場合

    • イベント方式の転送キュー監視で切断時間間隔を超えた場合

    • 受信側MCAからハートビートメッセージに対する応答と一緒にチャネルの終了を要求された場合

    条件を満たさなかった場合,1.に戻ります。

(2) ハートビート機能の指定

ハートビート機能を使用する場合,ハートビートメッセージを送信する間隔をTCP定義のmqtalccha定義コマンドの-v htimオペランドで指定します。指定できる値の範囲は0〜999999(単位:秒)です。ハートビート間隔は,すべてのチャネルタイプに指定できます。

ハートビート間隔は,チャネル確立時にコーラとレスポンダ間のネゴシエーションでチェックされ,使用するかどうかが決定されます。また,コーラ,レスポンダ双方でハートビート間隔を指定した場合,大きい方の値が有効になります。

(3) 注意事項