IBM i のLANSA Composerリクエストサーバーの仕組み

LANSA Composer

IBM i のLANSA Composerリクエストサーバーの仕組み


下の図は、LANSA Composerの処理シーケンス内で、異なったLANSAシステムや区画にあるLANSAのファンクションを、CALL_FUNCTIONアクティビティを使って同時に"呼び出す"場合の、IBM i のLANSA Composerリクエスト・サーバーの動作を示しています。  図の中で示される番号は以下の注意書きに対応しています。

この図ではCALL_FUNCTIONアクティビティについて示されていますが、これと反対のケース、つまりLANSAアプリケーションで組み込み関数COMPOSER_RUNを使ってLANSA Composerの処理シーケンスを"呼び出す"場合も処理は同様です。

 

1.  CALL_FUNCTIONアクティビティのアクティビティ・プロセッサは、LANSAリクエスト・サーバーで使用される1つまたは複数のヘッダーと詳細データの待ち行列を加えて、リクエスト・サーバーに要求を送信します。  またリクエスト・サーバーがまだ使用できない状態であると分かると、自動的にリクエスト・サーバーを開始させます。

2.  LANSA Composerのリクエスト・サーバーが、データ待ち行列から要求についての詳細を受け取ります。

3.  CALL_FUNCTIONの場合、リクエスト・サーバーは目的のLANSAシステムの交換リストに交換された変数とデータを追加し、指定のLANSAファンクションを呼び出します。  そこでLANSA交換リストから交換された変数の値を受け取ります。

4.  リクエスト・サーバーは応答データを応答データ待ち行列に送ります。

5.  CALL_FUNCTIONのアクティビティ・プロセッサが、そのデータ待ち行列からの応答データを受け取り、結果を判断して、必要に応じて処理シーケンスの変数プール内の値を更新します。