2.1.1 RPCのサービス要求方式
TP1アダプタのRPC通信では,接続先システムによって,サポートするサービス要求方式が次のとおり異なります。
- 接続先システムがTP1/Server Baseの場合※1
- リモートAPI機能
- ネームサービス機能
- スケジューラダイレクト機能
- 通信先を指定した接続
- 接続先システムがOpenTP1とRPC通信できるメインフレームシステム(TMS-4V,DCCM3など)の場合※2
- 注※1
- TP1/Server Baseとの接続では,TP1/Client/J環境定義でネームサービス機能およびスケジューラダイレクト機能を選択します。
- 注※2
- メインフレームシステム(TMS-4V,DCCM3など)との接続では,端末識別子情報を付加した通信はできません。
なお,リモートAPI機能,ネームサービス機能,およびスケジューラダイレクト機能の詳細は,マニュアル「OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 クライアント使用の手引 TP1/Client/J編」を参照してください。
- <この項の構成>
- (1) リモートAPI機能
- (2) ネームサービス機能
- (3) スケジューラダイレクト機能
- (4) 通信先を指定した接続
(1) リモートAPI機能
TP1アダプタと接続先システムの間にコネクションを確立します。そのあと,TP1アダプタが発行したAPIを接続先システムに転送して,接続先システム側のプロセスで実行できます。ただし,接続先システムがリモートAPI接続に対応している必要があります。
TP1アダプタでは,TP1アダプタの通信構成定義によって,次の設定ができます。
- コネクションの確立方式の指定
確立するコネクションを次に示すどちらかから指定できます。
- コネクションの管理方式の指定
コネクションの管理方式を次に示すどちらかから指定できます。
確立するコネクションによって,指定できる管理方式は次のとおり異なります。
- 常設コネクションを確立する場合
コネクションの確立を自動化するオートコネクトモード,または明示的に確立要求を行う非オートコネクトモードのどちらかから指定できます。
オートコネクトモードを指定した場合の処理の概要を図2-1,非オートコネクトモードを指定した場合の処理の概要を図2-2に示します。
- 非常設コネクションを確立する場合
コネクションの管理方式は指定できません。コネクションは,非オートコネクトモードで確立されます。
非常設コネクションを確立した場合の処理の概要を図2-3に示します。
なお,TP1アダプタの通信構成定義の詳細は,「3.4 TP1アダプタの通信構成定義ファイルの作成」を参照してください。
図2-1 常設コネクションを確立した場合の処理概要(オートコネクトモード)
![[図データ]](figure/zc020100.gif)
- サービスリクエスタからの要求をHCSCサーバで受け付ける。
- HCSCサーバでTP1アダプタのメソッドを起動する。
- TP1アダプタで最初のサービス実行時に常設コネクションを確立する。
- RPC通信を行い,サービスを実行する。
- RPC通信の結果(応答データ)をサービスリクエスタに応答する。
- TP1アダプタの停止時に常設コネクションを解放する。
図2-2 常設コネクションを確立した場合の処理概要(非オートコネクトモード)
![[図データ]](figure/zc020200.gif)
- TP1アダプタを開始したときに,常設コネクションを確立する。
- サービスリクエスタからの要求をHCSCサーバで受け付ける。
- HCSCサーバでTP1アダプタのメソッドを起動する。
- RPC通信を行い,サービスを実行する。
- RPC通信の結果(応答データ)をサービスリクエスタに応答する。
- TP1アダプタの停止時に常設コネクションを解放する。
図2-3 非常設コネクションを確立した場合の処理の概要(非オートコネクトモード)
![[図データ]](figure/zc020300.gif)
- サービスリクエスタからの要求をHCSCサーバで受け付ける。
- HCSCサーバでTP1アダプタのメソッドを起動する。
- 接続先システム(RAPリスナー)にコネクションの確立要求を行う
- RPC通信を行い,サービスを実行する。
- 確立したコネクションの解放要求を行う。
- RPC通信の結果(応答データ)をサービスリクエスタに応答する。
コネクションの管理方式にオートコネクトモードを指定した場合,リモートAPI接続時のコネクション確立は,サービス要求を受け付けたときのRPC通信に先だって行われます。したがって,オートコネクトモードを指定した通信環境では,TP1アダプタ運用中に多数のサービス要求を一時期に受け付けた場合,サービス要求を受け付けた数だけコネクション確立処理を行います。
複数のコネクションが確立された場合の処理の概要を次の図に示します。
図2-4 複数のコネクションが確立された場合の処理の概要(オートコネクトモード)
![[図データ]](figure/zc020400.gif)
(2) ネームサービス機能
TP1アダプタは,接続先のOpenTP1システムに対して,サービス要求時にサービスグループ名およびサービス名を指定した上でサーバUAPにサービスを要求します。ネームサービスでサーバUAPがあるノードのネットワークアドレスとサービス名を管理しているため,ネットワーク上のどのノードにサーバUAPがあるかをTP1アダプタで意識する必要がありません。
ネームサービス機能を使用した場合の処理の概要を次の図に示します。
図2-5 ネームサービス機能を使用した場合の処理の概要
![[図データ]](figure/zc020500.gif)
- サービスリクエスタからの要求をHCSCサーバで受け付ける。
- HCSCサーバでTP1アダプタのメソッドを起動する。
- ネームサービスにサービスの所在を問い合わせる。
- RPC通信を行い,サービスを実行する。
- RPC通信の結果(応答データ)をサービスリクエスタに応答する。
(3) スケジューラダイレクト機能
接続先OpenTP1システムのスケジューラデーモンを直接指定してサービスを要求します。
スケジューラダイレクト機能を使用した場合の処理の概要を次の図に示します。
図2-6 スケジューラダイレクト機能を使用した場合の処理の概要
![[図データ]](figure/zc020600.gif)
- サービスリクエスタからの要求をHCSCサーバで受け付ける。
- HCSCサーバでTP1アダプタのメソッドを起動する。
- RPC通信を行い,サービスを実行する。
- RPC通信の結果(応答データ)をサービスリクエスタに応答する。
(4) 通信先を指定した接続
接続先OpenTP1システムのスケジューラデーモンを直接指定してサービスを要求します。スケジューラダイレクト機能との違いは,通信先のスケジューラデーモンが持つノードのSPPに異常が発生した場合も,ほかのスケジューラデーモンに転送しないという点です。
接続先OpenTP1システムのスケジューラデーモンを指定した場合の接続処理の概要を次の図に示します。
図2-7 通信先を指定した場合の接続処理の概要
![[図データ]](figure/zc021100.gif)
- サービスリクエスタからの要求をHCSCサーバで受け付ける。
- HCSCサーバでTP1アダプタのメソッドを起動する。
- 通信先を指定したRPC通信を行い,サービスを実行する。
- RPC通信の結果(応答データ)をサービスリクエスタに応答する。