ページの先頭行へ戻る
Interstage Application Server MessageQueueDirector説明書

10.2.1 メッセージ交換

  ACM連携サービスを利用することにより、他サーバ(UNIXサーバ、Windowsサーバまたはグローバルサーバ)上のアプリケーションとの間で、サーバ間のメッセージ交換を実現できます。

  アプリケーションは、サーバ間のメッセージ転送を意識することなく、サーバ内の通信と同様にメッセージ交換を行うことができます。

  ACM連携サービスでのメッセージ交換のモデル(サーバ間)を図10.2 サーバ間のメッセージ交換のモデルに示します。

図10.2 サーバ間のメッセージ交換のモデル

  1.   アプリケーションAは要求メッセージをメッセージキューa1に送信します。

  2.   要求メッセージはメッセージキューa1に対応するメッセージキューb1にMQDによって転送されます。

  3.   アプリケーションBはメッセージキューb1から要求メッセージを受信し、応答メッセージをメッセージキューb2に送信します。

  4.   応答メッセージはメッセージキューb2に対応するメッセージキューa2にMQDによって転送されます。

  5.   最後に、アプリケーションAはメッセージキューa2から応答メッセージを受信することで要求/応答型のメッセージ交換が実現できます。

10.2.1.1 DPCF通信パスの確立

  サーバ間のメッセージ交換を行うためには、事前にIDCMのDPCF通信パスを確立する必要があります。DPCF通信パスの確立の操作方法については、“OS IV IDCM使用手引書”、“IDCM使用手引書”、および“IDCMヘルプ”を参照してください。

10.2.1.2 送信キューと受信キューの結合

  サーバ間のメッセージ交換では、メッセージ送信および受信するために以下のメッセージキューを使用します。

  送信キューとは、メッセージ送信するために使用するメッセージキューです。一つの送信キューに対して、一つの受信キューを対応づけます。一つの送信キューに対して、複数の受信キューを対応づけることはできません。また、ディスク型のメッセージキューとメモリ型のメッセージキューを対応付けることはできません。

  受信キューは、メッセージ受信するために使用するメッセージキューです。一つの受信キューに対して、複数の送信キューを対応づけることができます。複数の送信キューと対応づけることにより、複数のサーバ上のMQDまたはグローバルサーバ上のAIMから一つのサーバ上のMQDに対してメッセージ送信する集信型のメッセージ交換が実現できます。送信キューと受信キューの対応関係について、図10.3 送信キューと受信キューの対応関係に示します。

図10.3 送信キューと受信キューの対応関係

  送信キューと受信キューの対応関係は、ACM連携サービスの環境定義で指定します。詳細については、“10.3 環境作成”を参照してください。

  送信キューと受信キューの結合は、以下の契機で自動的に行われます。

  [AIM特化型ACMとメッセージ交換を行う場合]

  [MQDとメッセージ交換を行う場合]

  [MQD MQゲートウェイとメッセージ交換を行う場合]

  また、一つのサーバ内で複数のMQDシステムを運用する場合、以下の注意点があります。

10.2.1.3 メッセージ送信

  サーバ間でメッセージ送信する機能です。ACM連携サービスの環境定義で、メッセージキューをACM連携サービスの送信キューとして定義して、その送信キューと相手サーバの受信キューの対応関係を定義することで、自サーバのMQDから相手サーバにメッセージ送信されます。

  サーバ間のメッセージ送信の流れを図10.4 メッセージ送信の流れに示します。

図10.4 メッセージ送信の流れ

[図の説明]

  1. メッセージキュー(送信キュー)から、送信メッセージを取り出します。

  2. IDCMを使用して相手サーバの受信キューにメッセージを送信します。

注意事項

  ACM連携サービスのメッセージ送信機能を使用する場合、以下の点に注意してください。

10.2.1.4 メッセージ受信

  相手サーバからのメッセージを受信する機能です。相手サーバの環境定義で、送信キューと受信キューの対応関係を定義します。ACM連携サービスは、この定義で対応づけられた送信キューからメッセージを受信し、該当の受信キューにメッセージを格納します。

  サーバ間のメッセージ受信の流れを図10.5 メッセージ受信の流れに示します。

図10.5 メッセージ受信の流れ

[図の説明]

  1.   IDCMを使用して相手サーバからのメッセージを受信します。

  2.   プロトコル情報の送信キューと受信キューの対応関係から受信キューを特定し、メッセージを格納します。

10.2.1.5 メッセージヘッダ

  AIM特化型ACM、またはMQD MQゲートウェイと連携したメッセージ交換では、相手サーバのアプリケーションにメッセージヘッダが通知されません。AIM特化型ACMまたはMQD MQゲートウェイ連携時のメッセージヘッダに対する処理内容について以下に説明します。なお、UNIXサーバおよびWindowsサーバ上のMQDと連携した場合のメッセージヘッダについては、“8.2.32 メッセージヘッダ”を参照してください。

  図10.6 メッセージヘッダの取り扱いにAIM特化型ACMおよびMQD MQゲートウェイと連携した場合のメッセージヘッダの取り扱いについて示します。

図10.6 メッセージヘッダの取り扱い

  次に、相手サーバからメッセージ受信した時、ACM連携サービスが自動生成するメッセージヘッダの内容について、表10.1 メッセージ受信時のメッセージヘッダの内容に示します。

表10.1 メッセージ受信時のメッセージヘッダの内容

項目名

和名

データ型

設定値

MSG-TYPE

メッセージタイプ

PIC X(1)

X’02’

CODE-TYPE

コード系情報

PIC X(1)


X’02’


X’01’

BODY-CODE

メッセージ本体のコード系情報

PIC X(1)

X’00’: 文字コード変換を使用しない場合


X’02’: 文字コード変換を使用した場合


X’01’: 文字コード変換を使用した場合

UNIT-ID

ユニット識別子

PIC X(128)

タイムスタンプ.スレッドID.プロセスID.キュー名.MQDシステム名

MSG-SERIALNO

メッセージ通番

PIC 9(9)
COMP-5

1

EOU-FLAG

ユニット終了フラグ

PIC X(1)

X’00’

ORIGINAL-SYSNAME

送信MQDシステム名

PIC X(9)

DPCF通信パス名

VERSION

バージョン

PIC X(8)

“1.1”

ORIGINAL-QNAME

送信キュー名

PIC X(64)

送信用メッセージキュー名(論理あて先、またはMQSeriesのキュー名)

GUARANTEE

メッセージ保証レベル

PIC X(1)

X’02’

ORIGINAL-TIMESTAMP

送信タイムスタンプ

PIC 9(9)
COMP-5

0

TRANS-TIMESTAMP

転送タイムスタンプ

PIC 9(9)
COMP-5

0

ARRIVE-TIMESTAMP

到着タイムスタンプ

PIC 9(9)
COMP-5

ACM連携サービスがメッセージを受信した時刻

DELAY-TIME

転送遅延時間

PIC 9(9)
COMP-5

0

QUEUING-TIME

キューイング時間

PIC 9(9)
COMP-5

ACM連携サービスがメッセージを受信してからアプリケーションがメッセージを受信するまでの時刻

MSG-NAME

メッセージ名

PIC X(64)

“ACOM”

MSG-ID

メッセージ識別子

PIC 9(9)
COMP-5

0

PRIORITY

プライオリティ

PIC 9(9)
COMP-5

相手サーバから受信したプライオリティ値

MSGBODY-LENGTH

メッセージ本体長

PIC 9(9)
COMP-5

相手サーバから受信したメッセージ長

RETURN-QNAME

返信キュー名

PIC X(64)

空白

TIMELIMIT

最大保存時間

PIC 9(9)
COMP-5

0

ACCESS-RIGHT

アクセス権

PIC 9(9)
COMP-5

0

注) 項目名とデータ型はCOBOLの場合の例です。