7.7.2 CL同期メッセージの処理の流れ

通常,CLサーバの待機系では,実行系からのCL同期メッセージを受信した場合,処理キューを経由してCL同期メッセージを受信したスレッドとは別のスレッドで実行系へ送達確認メッセージを送信します。

mch_clreq_rcvthdオペランドにYを指定した場合は,CL同期メッセージ受信完了時,処理キューを経由しないで,実行系へ送達確認メッセージを送信するため,実行系での同期処理時間を短縮できます。

ただし,実行系から転送する処理スレッドが多い場合や,転送するデータサイズが大きい場合は実行系での同期処理時間が短縮できない場合もあります。

mch_clreq_rcvthdオペランドにNを指定したときのCL同期メッセージの処理の流れを次の図に示します。

図7-11 CL同期メッセージの処理の流れ

[図データ]

説明
  1. 実行系は,リソースを一括して待機系に送信します。
  2. 待機系は,送信されたデータサイズに応じて肯定応答(ACK)を送信します。
  3. 待機系は,すべてのCL同期メッセージを受信したあと,実行系に送達確認メッセージを肯定応答不要で送信します。

mch_clreq_rcvthdオペランドにYを指定したときのCL同期メッセージの処理の流れを次の図に示します。

図7-12 CL同期メッセージの処理の流れ(mch_clreq_rcvthdオペランドにYを指定したとき)

[図データ]

説明
mch_clreq_rcvthdオペランドにYを指定したときは,CL同期メッセージの肯定応答(ACK)送信後,処理キューを経由せずに同一スレッドから送達確認メッセージを送信します。
なお,送達確認メッセージの送信タイミング以外は,通常時の処理の流れと同じです。