9 CORBAインタフェース・リポジトリの管理
ノート:
Oracle Tuxedo CORBA JavaクライアントとOracle Tuxedo CORBA JavaクライアントORBはTuxedo 8.1から非推奨になり、Tuxedo 9.xからサポートされなくなりました。Oracle Tuxedo CORBA JavaクライアントとOracle Tuxedo CORBA JavaクライアントORBのすべてのテキスト・リファレンスや関連するサンプル・コードなどは、次の場合にのみ使用してください:- サード・パーティのJava ORBライブラリの実装や実行に役立てる場合
- プログラマが参照する場合
サード・パーティのCORBA Java ORBのテクニカル・サポートは、各ベンダーによって提供されます。Oracle Tuxedoでは、サード・パーティのCORBA Java ORBに関する技術的なサポートまたはドキュメントは提供していません。
9.1 概要
インタフェース・リポジトリには、Oracle Tuxedoドメインで実装されるCORBAオブジェクトのインタフェース記述が格納されています。インタフェース・リポジトリは、Oracle Tuxedo CORBAサーバー固有のツールを使用して管理します。これらのツールを使用すると、インタフェース・リポジトリを作成したり、OMG (Object Management Group)のIDL(インタフェース定義言語)の定義に準拠した設定を行ったり、インタフェースを削除したりできます。インタフェース・リポジトリ・サーバーをシステムに追加するには、アプリケーションのUBBCONFIG
ファイルにエントリを追加することが必要になる場合があります。
プログラミングの関連情報については、『CORBAプログラミング・リファレンス』を参照してください。
9.2 管理上の考慮事項
管理者は、インタフェース・リポジトリが必要かどうかを判断する必要があります。インタフェース・リポジトリは、すべてのシステムで必要なわけではないためです。インタフェース・リポジトリが必要な場合は、まずリポジトリ・データベースを作成し、必要な設定を行います。リポジトリ・データベースの作成と設定には、idl2ir
コマンドを使用します。インタフェース・リポジトリが必要な場合は、以下の点を確認してください。
- 必要なインタフェース・リポジトリ・サーバーの数
- インタフェース・リポジトリ・データベースをレプリケートするかどうか
- インタフェース・リポジトリ・データベースへの共有アクセスを許可するかどうか
- インタフェース・リポジトリの更新方法
システムには、1つ以上のインタフェース・リポジトリ・サーバーを構成できます。動的起動インタフェース(DII)を使用するクライアントがある場合は、少なくとも1つのインタフェース・リポジトリ・サーバーを構成する必要があります。
複数のサーバーを設定すると、パフォーマンスとフォルト・トレランスを高めることができます。パフォーマンスを向上させるには、インタフェース・リポジトリ・サーバーの数をDIIクライアントの数に基づいて決めます。また、フォルト・トレランスを高めるには、システムの構成と要求される障害耐久性のレベルに基づいて、インタフェース・リポジトリ・サーバーの数を決める必要があります。
複数のインタフェース・リポジトリ・サーバーが設定されたシステムでは、データベースをレプリケートするかどうか、データベースを共有するかどうか、またはそれらを両方とも行うかどうかを決定する必要があります。どちらの構成方法にもそれぞれメリットとデメリットがあります。インタフェース・リポジトリ・データベースをレプリケートすると、ローカル・ファイル・アクセスが可能になるので、パフォーマンスを向上できます。
しかし、レプリケートしたデータベースをどのように更新するかが重大な問題となります。すべてのデータベースは常に同一でなければならず、そのためにインタフェース・リポジトリ・サーバーの起動と停止が必要になります。インタフェース・リポジトリ・データベースをマウントして共有するとこの問題を解決できますが、パフォーマンスに影響し、シングル・ポイント障害が発生する可能性があります。複製と共有の2つの方法を組み合せることも可能です。
親トピック: CORBAインタフェース・リポジトリの管理
9.3 管理コマンドを使用してインタフェース・リポジトリを管理する
次のコマンドを使用して、Oracle Tuxedoドメインのインタフェース・リポジトリを管理します:
-
idl2ir
-
ir2idl
-
irdel
親トピック: CORBAインタフェース・リポジトリの管理
9.3.2 インタフェース・リポジトリを作成して設定する
idl2ir
コマンドを使用し、インタフェース・リポジトリを作成してリポジトリにインタフェース定義をロードします。リポジトリ・ファイルがない場合は、コマンドによって作成されます。リポジトリ・ファイルがある場合は、指定されたインタフェース定義がコマンドによってファイルにロードされます。このコマンドの形式は次のとおりです。 idl2ir [options] definition-filename-list
このコマンドの詳細は、Oracle Tuxedoのオンライン・マニュアルの『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』を参照してください。
ノート:
変更結果を確認するには、インタフェース・リポジトリ・サーバーを再起動する必要があります。9.3.3 インタフェース・リポジトリの内容を表示または抽出する
インタフェース・リポジトリの内容を表示するには、ir2idl
コマンドを使用します。このコマンドを使用して、複数のインタフェースのOMG IDLステートメントをファイルに抽出することもできます。このコマンドの形式は、ir2idl [options] [interface-name]
です。このコマンドの詳細は、Oracle Tuxedoのオンライン・マニュアルの「セクション5 - ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス」を参照してください。
9.3.4 インタフェース・リポジトリからオブジェクトを削除する
irdel
コマンドを使用します。削除できるのは、他のインタフェースから参照されていないインタフェースだけです。デフォルトでは、リポジトリ・ファイルはrepository.ifr
です。このコマンドの形式は次のとおりです。 irdel [-f repository-name] [-i id] object-name
このコマンドの詳細は、Oracle Tuxedoのオンライン・マニュアルの「セクション5 - ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス」を参照してください。
ノート:
変更結果を確認するには、インタフェース・リポジトリ・サーバーを再起動する必要があります。9.4 1つ以上のインタフェース・リポジトリ・サーバーを起動するようにUBBCONFIGファイルを構成する
1つ以上のインタフェース・リポジトリを使用する各アプリケーションに対し、Tuxedo CORBAのインタフェース・リポジトリ・サーバーを1つ以上起動する必要があります。サーバー名はTMIFRSVR
です。このTMIFRSVR
のエントリを、アプリケーションのUBBCONFIG
ファイルのSERVERS
セクションに追加します。デフォルトでは、TMIFRSVR
サーバーは、APPDIR
環境変数で指定された最初のパス名にあるインタフェース・リポジトリ・ファイルrepository.ifr
を使用します。このデフォルト設定は、コマンド行オプション(CLOPT
)パラメータで-f filename
オプションを指定してオーバーライドすることができます。次の例は、UBBCONFIG
サンプル・ファイルのSERVERS
セクションを示しています。この例では、アプリケーションのデフォルトのインストール先ディレクトリ($APPDIR
)にあるデフォルト・ファイルrepository.ifr
を使用するかわりに、別のファイルと場所(/usr/repoman/myrepo.ifr
)を指定しています。
ノート:
この例では、Oracle Tuxedo CORBAアプリケーションでサーバーの起動順序が重要であることを示すため、他のサーバー・エントリも記載しています。この順序に従わないと、Oracle Tuxedo CORBAアプリケーションは起動しません。詳細は、「構成ファイルの作成」の「CORBA C++サーバーの起動順序」という項を参照してください
インタフェース・リポジトリ・サーバーのTMIFRSVR
は、5番目に起動されます。
*SERVERS
# Start the Oracle Tuxedo System Event Broker
TMSYSEVT
SRVGRP = SYS_GRP
SRVID = 1
# Start the NameManager (master)
SRVGRP = SYS_GRP
SRVID = 2
CLOPT = "-A -- -N -M"
# Start the NameManager (slave)
TMFFNAME
SRVGRP = SYS_GRP
SRVID = 3
CLOPT = "-A -- -N"
# Start the FactoryFinder (-F)
TMFFNAME
SRVGRP = SYS_GRP
SRVID = 4
CLOPT = "-A -- -F"
# Start the interface repository server
TMIFRSVR
SRVGRP = SYS_GRP
SRVID = 5
RESTART=Y
MAXGEN=5
GRACE=3600
CLOPT="-A -- -f/usr/repoman/myrepo.ifr"
TMIFRSVR
-f filename
パラメータの詳細は、『ファイル形式、データ記述、MIBおよびシステム・プロセス・リファレンス』を参照してください。TMIFRSVR
パラメータには、CLOPT -f filename
パラメータに加え、アプリケーションのUBBCONFIG
構成ファイルのSERVERS
セクションで、その他のパラメータ(Oracle Tuxedoシステム固有ではないパラメータ)を設定することもできます。
SRVGRP、SRVID、RESTART、MAXGEN
、GRACE
などのパラメータの詳細は、「構成ファイルの作成」の「構成ファイルのSERVERSセクションの作成方法」を参照してください。
親トピック: CORBAインタフェース・リポジトリの管理