bea ホーム | 製品 | dev2dev | support | askBEA
BEA Logo Tuxedo
 ドキュメントのダウンロード   サイトマップ   用語集 
検索
0

Tuxedo CORBA サーバ間通信

 Previous Next Contents Index View as PDF  

CORBA サーバ間通信について

ここでは、以下の内容について説明します。

 


CORBA サーバ間通信の概要

CORBA サーバ間通信を使用すると、BEA Tuxedo アプリケーションで CORBA オブジェクトを呼び出し、その CORBA オブジェクトからの呼び出しを処理できます (コールバック・オブジェクトと呼ばれる)。CORBA オブジェクトは BEA Tuxedo ドメインの内部にも外部にも配置できます。

BEA Tuxedo 製品は、インターネット ORB 間プロトコル(IIOP)バージョン 1.2 のインプリメンテーションを提供します。これは CORBA オブジェクトとの間でインバウンドおよびアウトバウンドの通信を可能にするものです。サーバ間通信により、ネットワーク・リソースをより効率的に利用できるようになり、サード・パーティのオブジェクト・リクエスト・ブローカ(ORB)との統合が提供されます。加えて、サーバ間通信は IIOP のバージョン 1.0 および 1.1 を使用してインプリメントされる CORBA オブジェクトによりサポートされています。

 


共同クライアント/サーバ・アプリケーション

サーバ間通信により、クライアント・アプリケーションがほかのクライアント・アプリケーションからの要求に対処するサーバ・アプリケーションとして動作できるようになります。さらに、サーバ間通信を使用すると BEA Tuxedo サーバ・アプリケーションでほかの ORB に対してオブジェクトを呼び出せます。

注記 BEA Tuxedo および WebLogic Enterprise 製品の旧バージョンでは、クライアント・アプリケーションは、Object Management Group(OMG)インターフェイス定義言語(IDL)で定義された CORBA オブジェクトのオペレーションを呼び出していました。サーバ・アプリケーションは、CORBA オブジェクトのオペレーションをインプリメントしていました。サーバ・アプリケーション内の CORBA オブジェクトは、BEA Tuxedo TP フレームワークおよび環境オブジェクトを使用して、状態管理、セキュリティ、およびトランザクションのインプリメントを行っていました。これらの CORBA オブジェクトは、BEA Tuxedo オブジェクトと呼ばれます。サーバ・アプリケーションはほかのサーバ・アプリケーションに対してクライアント・アプリケーションとして動作できましたが、クライアント・アプリケーションがほかのクライアント・アプリケーションに対し、サーバ・アプリケーションとして動作することはできませんでした。

サーバ間通信機能は、コールバック・オブジェクトを介して利用できます。コールバック・オブジェクトには、次の 2 つの目的があります。

コールバック・オブジェクトは TP フレームワークを使用しません。また、BEA Tuxedo の管理下には置かれません。コールバック・オブジェクトは、トランザクションの振る舞い、セキュリティ、信頼性、およびスケーラビリティが重要ではない場合にのみ使用してください。

コールバック・オブジェクトは、共同クライアント/サーバ・アプリケーションにインプリメントされます。共同クライアント/サーバ・アプリケーションは、以下のもので構成されています。

注記 BEA Tuxedo CORBA 製品のうち、CORBA 環境のリリース 8.0 には、BEA WebLogic Enterprise の旧リリースで提供されていた BEA クライアント環境オブジェクトが引き続き含まれており、BEA Tuxedo 8.0 CORBA クライアントでも使用できます。BEA Tuxedo 8.0 クライアントは、これらの環境オブジェクトを使用して、ブートストラップ処理、セキュリティ、およびトランザクション・オブジェクトへの初期リファレンスを解決する必要があります。このリリースでは、OMG インターオペラブル・ネーミング・サービス(INS)を使用してブートストラップ処理、セキュリティ、およびトランザクション・オブジェクトへの初期リファレンスを解決するためのサポートが追加されています。INS の詳細については、『BEA Tuxedo CORBA プログラミング・リファレンス』の「第 4 章 CORBA ブートストラップ処理のプログラミング・リファレンス」を参照してください。

図1-1 では、共同クライアント/サーバ・アプリケーションの構造を示します。

図 1-1 共同クライアント/サーバ・アプリケーションの構造

C++ および Java による共同クライアント/サーバ・アプリケーションがサポートされています。

Java アプレットでのコールバック・オブジェクトの使用は、Java アプレットのセキュリティ・メカニズムにより制限されています。独自の環境またはプロトコルを使用した Java アプレットによるソケットの作成およびリッスンが可能な、任意の Java アプレット実行時環境を、共同クライアント/サーバ・アプリケーションとして動作させることができます。しかし、Java アプレット実行時環境がソケット通信を制限している場合、その Java アプレットは共同クライアント/サーバ・アプリケーションとして動作できません。

共同クライアント/サーバ・アプリケーションでは、IIOP を使用して BEA Tuxedo サーバ・アプリケーションと通信します。IIOP は、使用している IIOP プロトコルのバージョンに応じて、以下の方法で動作できます。

注記 リモート・オブジェクトのタイプと希望するアウトバウンド IIOP コンフィギュレーションによっては、さらに別のプログラミング・タスクを実行しなければならない場合があります。

表 1-1 では、オブジェクトの各タイプとアウトバウンド IIOP についての要件を示します。

表 1-1 アウトバウンド IIOP を使用するためのプログラミング要件

オブジェクトのタイプ

非対称要件

ペア接続要件

双方向要件

リモート共同クライアント/サーバ

ISL CLOPT -O オプションを設定します。

Tobj_Bootstrap::register_callback_port メソッドを使用してコールバック・ポートを登録します。

CORBA::ORB::create_policy メソッドを使用して POA 上でBiDirPolicy を設定します。

外部 (非 BEA-Tuxedo) ORB

ISL CLOPT -O オプションを設定します。

適用されません。

ORB が POA および BiDirPolicy をサポートしている場合は、CORBA::ORB::create_policy メソッドを使用して POA 上で BiDirPolicy を設定します。

リモート・クライアント

リモート・クライアントはサーバではないため、アウトバウンド IIOP は使用できません。

ネイティブ共同クライアント/サーバ

アウトバウンド IIOP は使用されません。

ネイティブ・クライアント

アウトバウンド IIOP は使用されません。

双方向、デュアル・ペア接続、および非対称 IIOP の詳細については、『BEA Tuxedo CORBA プログラミング・リファレンス』を参照してください。

 


コールバック・オブジェクトのオブジェクト方針

コールバック・オブジェクトには、オブジェクト・リファレンスの有効期間やオブジェクト ID がそのオブジェクトに割り当てられる方法を制御する方針が割り当てられます。オブジェクト方針は、コールバック・オブジェクトへのリファレンス作成時に定義されます。また、これらの方針はコールバック・ラッパー・オブジェクト内で定義されるので、共同クライアント/サーバ・アプリケーションの開発が簡略化されます。

コールバック・オブジェクトでは、次のオブジェクト方針がサポートされています。

一時オブジェクト方針を備えたコールバック・オブジェクトを作成する場合、オブジェクト・リファレンスは共同クライアント/サーバ・アプリケーションが終了するまで、または stop_all_objects メソッドが呼び出されるまでの間のみ有効です。

永続オブジェクト方針を備えたコールバック・オブジェクトを作成する場合、オブジェクト・リファレンスは共同クライアント/サーバ・アプリケーションの終了後でも有効です。共同クライアント/サーバ・アプリケーションが、同一オブジェクト ID についてサーバントを終了、再起動、および活性化すると、サーバントはそのオブジェクト・リファレンスに対して行われた要求を受け取ります。

注記 ネイティブ共同クライアント/サーバ・アプリケーション、つまり呼び出し側のサーバ・アプリケーションと同じ BEA Tuxedo ドメインに配置された共同クライアント/サーバ・アプリケーションを作成する場合は、永続/システム ID または永続/ユーザ ID のオブジェクト方針を使用することはできません。

 

Back to Top Previous Next
Contact e-docsContact BEAwebmasterprivacy