1.2 通信パラダイム
次の表は、アプリケーション開発者が利用できるOracle Tuxedo ATMIの通信パラダイムを示しています。
表1-1 通信パラダイム
パラダイム | 説明 |
---|---|
リクエスト/レスポンス通信 | リクエスト/レスポンス型通信では、あるソフトウェア・モジュールが2番目のソフトウェア・モジュールにリクエストを送り、そのレスポンスを受け取ります。リクエスタがレスポンスを受け取るまで処理が行われずに待機する同期通信、またはリクエスタがレスポンスを待機する間も処理が継続される非同期通信の2種類があります。
このモードは、クライアント/サーバー相互作用とも呼ばれます。最初のソフトウェア・モジュールがクライアント、2番目のソフトウェア・モジュールがサーバーになります。 このパラダイムの詳細は、「リクエスト/レスポンス通信のコーディング」を参照してください。 |
会話型通信 | 会話型通信はリクエスト/レンポンス型通信に似ていますが、会話が終了する前に複数のリクエストやレンポンスが発生します。会話型通信では、会話が切断されるまでクライアントとサーバーで状態の情報が保持されます。クライアントとサーバー間でメッセージをやり取りする方法は、使用するアプリケーション・プロトコルによって決定されます。
通常、会話型通信はサーバーからクライアントへの長いレスポンスのバッファとして使用されます。 このパラダイムの詳細は、「会話型クライアントおよびサーバーのコーディング」を参照してください。 |
アプリケーション・キュー・ベースの通信 | アプリケーション・キュー・ベースの通信では、遅延通信、つまり時間に依存しない通信が行われます。この通信では、クライアントとサーバーがアプリケーション・キューを使用して通信します。Oracle Tuxedo/Q機能を使用すると、メッセージを永続的な記憶装置(ディスク)や一時的な記憶装置(メモリー)のキューに入れることができ、後で処理したり取り出すことができます。
アプリケーション・キュー・ベースの通信は、たとえば、メンテナンスのためにシステムをオフラインにしたときにリクエストをキューに登録する場合や、クライアントとサーバーの処理速度が異なる場合に通信をバッファに格納する場合に使用します。 /Q機能の詳細は、『ATMI /Qコンポーネントの使用』を参照してください。 |
イベント・ベースの通信 | イベント・ベースの通信では、特別な状況(イベント)が発生した場合に、クライアントやサーバーがそれをクライアントに通知します。イベントの通知には、次の2つの方法があります。
このパラダイムの詳細は、「イベント・ベースのクライアントおよびサーバーのコーディング」を参照してください。 |
親トピック: Oracle Tuxedoプログラミングの紹介