Interstage Application Server アプリケーション作成ガイド (データベース連携サービス編)
|
目次
索引

|
3.2.2.2 形態の説明
クライアントアプリケーションからサーバアプリケーションを呼び出す形態を、以下に示します。
- 同期型
- サーバアプリケーションを呼び出し、サーバアプリケーションのメソッドが終了した時点でクライアントアプリケーションに制御が戻ります。
- 非同期型
- サーバアプリケーションを呼び出し、サーバアプリケーションのメソッドの終了を待たずにクライアントアプリケーションに制御が戻ります。クライアントアプリケーションは任意のタイミングでサーバアプリケーションのメソッドの終了を問い合わせます。
同期型
- 呼び出し形態
- 同期型呼び出しは、クライアントアプリケーションからサーバアプリケーションを呼び出し、そのサーバアプリケーションの処理終了を待ち合わせる呼び出し形態です。同期型の呼び出し形態について、以下に示します。

- インタフェース
- 同期型には、静的起動インタフェース、動的起動インタフェースがあります。静的起動インタフェースは、サーバアプリケーションのメソッド名を指定して呼び出します。動的起動インタフェースは、RequestインタフェースのCORBA::Request::invoke()メソッドでサーバアプリケーションを呼び出します。詳細は、“リファレンスマニュアル(API編)”を参照してください。また、動的起動インタフェースにおいて、遅延同期送信を行う場合の注意事項を以下に示します。
- ・遅延同期送信の呼び出し元
- 遅延同期送信の呼び出し元は、その呼び出しの復帰が完了するまでデータベースの操作を禁止します。

- ・遅延同期送信で呼び出されたサーバ
- 遅延同期送信の呼び出し先は、データベースを使用する場合には、複数の呼び出しが同じデータベースをアクセスできません。
- 同一データベースへのアクセス
- 遅延同期送信で呼び出されたアプリケーションから、同時に同一のデータベースを操作することはできません。

- 異なるデータベースへのアクセス
- 遅延同期送信で呼び出されたアプリケーションから、異なるデータベースを操作することはできます。

- アプリケーションの処理論理
- 同期型を使用する場合のクライアントアプリケーションの処理論理を、以下に示します。

- サーバアプリケーションAのメソッド1を呼び出します。クライアントアプリケーションはサーバアプリケーションAのメソッドが終了するまで待ち合わせます。
- クライアントアプリケーションは、サーバアプリケーションAのメソッド1の処理が終了した時点で制御が戻ります。
- サーバアプリケーションBのメソッド2を呼び出します。クライアントアプリケーションはサーバアプリケーションBのメソッドが終了するまで待ち合わせます。
- クライアントアプリケーションは、サーバアプリケーションBのメソッド2の処理が終了した時点で制御が戻ります。
非同期型
- 呼び出し形態
- 非同期型呼び出しは、クライアントアプリケーションからサーバアプリケーションを呼び出し、サーバアプリケーションのメソッドの終了を待たずにクライアントアプリケーションに制御が戻ります。クライアントアプリケーションは任意のタイミングでサーバアプリケーションのメソッドの終了結果を問い合わせる呼び出し形態です。非同期型の呼び出し形態を以下に示します。

- インタフェース
- RequestインタフェースのCORBA::Request::send_deferred()メソッドを使用します。詳細は、“リファレンスマニュアル(API編)”を参照してください。
- アプリケーションの処理論理
- 非同期型を使用する場合のクライアントアプリケーションの処理論理を、以下に示します。

- サーバアプリケーションAのメソッド1を非同期型で呼び出します。
- サーバアプリケーションBのメソッド2を非同期型で呼び出します。
- メソッド1の処理終了を問い合わせます。
- メソッド2の処理終了を問い合わせます。
Copyright 2008 FUJITSU LIMITED