7.3.2 RPCによるポートの使用方法
RPCによるポートの使用方法について次の図に示します。
-
OpenTP1の各プロセス(システムプロセスおよびユーザプロセス)は,プロセス初期化処理で受信用ポートを一つ確保します。
-
RPCの発行時,クライアントUAPプロセスで送信用ポートを確保し,スケジューラデーモンの受信用ポートとコネクションを確立し,RPCを送信します。すでにコネクションが確立されている場合は,それを使用します。送信用ポートには,あて先プロセス(各ノードのスケジューラデーモン)ごとに異なる番号が割り当てられます。
-
OSのメッセージキューの機能で,サーバUAPに連絡します。
-
RPCへの応答時に,サーバUAPプロセスは送信用ポートを確保し,クライアントUAPの受信用ポートとコネクションを確立し,応答を送信します。すでにコネクションが確立されている場合はそれを使用します。送信用ポートはあて先プロセス(クライアントUAPプロセス)ごとに異なる番号が割り当てられます。
その後のコミット処理での送信では,すでにクライアントUAPとサーバUAPとの間にすでにコネクションが確立されているため,それを使用します。