Oracle Application Server 10gを構成する方法

この項では、Oracle Application Server 10gでTimesTen JDBCドライバを使用するための構成に関する説明および例を示します。

前提: Oracle TimesTenおよびOracle Application Server(OAS)が同じホストマシンに正常にインストールされており、その両方のインスタンスが実行されている。

このアイコンにカーソルを置くと、スクリーンショットが表示されます。

TimesTen JDBCドライバの構成

Oracle Application Serverを使用してTimesTenデータベースにアクセスするには、サーバー環境に、TimesTen JDBCドライバjarファイルおよびTimesTen共有ライブラリへのアクセス権限が必要です。次の手順を実行します。
手順1
TimesTen JDBCドライバjarファイルをTimesTenのインストール・ディレクトリからOASのインストール・ディレクトリにコピーします。

<TimesTen_install_dir>/lib/ttjdbc5.jarまたはttjdbc6.jar<OAS_install_dir>/lib/extディレクトリにコピーします。

OASでJDK 1.5が使用されている場合はttjdbc5.jarファイルをコピーし、JDK 1.6が使用されている場合はttjdbc6.jarファイルをコピーします。
手順2
TimesTen共有ライブラリが含まれるようにLD_LIBRARY_PATH環境変数(またはご使用のOSにおける同等の変数)を変更します。OAS_install_dir/common/bin/commEnv.shファイルに設定されているLD_LIBRARY_PATH環境変数(またはそれに相当する変数)に、timesten_install_dir/libを追加します。

Windowsの場合は、TimesTen DLLが存在するTimesTen_install_dir/binディレクトリが含まれるようにPATH環境変数を設定します。OASが実行される環境にPATH変数を設定する必要があります。

手順3
アプリケーション・サーバーの起動にOPMN(Oracle Process Manager and Notification Service)を使用する場合は、TimesTen共有ライブラリの場所が含まれるようにOPMN構成ファイルを変更します。OPMN構成ファイルはOAS_install_dir/opmn/conf/opmn.confにあります。

opmn.confファイルを開いて、アプリケーション・サーバーに関連付けられるias-component要素にLD_LIBRARY_PATH環境変数(またはご使用のOSにおける同等の変数)のエントリを追加します。たとえば、Windowsプラットフォームでopmn構成ファイルに「OC4J」というコンポーネントを追加する場合は次のようになります。

<ias-component id="OC4J">
<environment>
    <variable id="PATH" value="C:\TimesTen\tt1121_32\bin" append="true" />
</environment>

手順4
Oracle Application Serverインスタンスを再起動して、変更を有効にします。

接続プールおよびデータ・ソースの構成

TimesTen JDBCドライバでは、TimesTenデータベースにアクセスするために、4つの異なる接続タイプがサポートされます。次の表に、接続タイプおよび接続プロパティを示します。

TimesTen JDBCドライバの各接続タイプについて、一意のデータ・ソース構成が必要です。次の例では、直接リンク接続モードの場合はsampledb_1121というTimesTen DSN、クライアント/サーバー接続モードの場合はsampledbCS_1121というTimesTen DSNを参照しています。これらのTimesTen DSNは、UNIXまたはLinuxプラットフォームのodbc.iniまたはsys.odbc.inファイルで構成するか、Windowsのデータ・ソース・アドミニストレータで構成する必要があります。

TimesTen JDBCドライバの各接続タイプについて、Oracle Application Serverで一意の接続プール構成が必要です。1つ以上のデータ・ソース・オブジェクトが、各接続プールに関連付けられている場合があります。

TimesTenの4つの接続タイプに対する接続プールおよびデータ・ソース構成の例を次に示します。


ローカル・トランザクションのみを使用した直接リンク接続
この構成では、TimesTenデータベース・ライブラリに処理中にリンクされます。直接リンク接続では、データベース操作で最短のレスポンス時間が得られ、より高いトランザクション・スループットが実現します。この構成を使用するには、Oracle Application ServerおよびTimesTenデータベースが同じマシンで実行されている必要があります。

TimesTenクラス: com.timesten.jdbc.TimesTenDriver
URLの例: jdbc:timesten:direct:sampledb_1121

図1
図1

oas_install_dir/j2ee/home/config/data-sources.xmlエントリの例

<connection-pool name="TimesTenDirectPool">
     <connection-factory factory-class="com.timesten.jdbc.TimesTenDriver"
     url="jdbc:timesten:direct:sampledb_1121"/>
</connection-pool>

<managed-data-source
    connection-pool-name="TimesTenDirectPool" jndi-name="jdbc/TimesTenDirectDS"     name="TimesTenDirectDS" tx-level="local"
/managed-data-source
>


図2

XA分散トランザクションを使用した直接リンク接続
JDBCドライバでは、XA分散トランザクションがサポートされます。直接リンク接続の場合、TimesTenデータベースは、Oracle Application Serverと同じマシンに存在する必要があります。この接続タイプでは、分散トランザクションによるオーバーヘッドが発生します。

TimesTenクラス: com.timesten.jdbc.xa.TimesTenXADataSource
URLの例: jdbc:timesten:direct:sampledb_1121

図3
図3

Oracle_install_dir/j2ee/home/config/datasources.xmlエントリの例

<connection-pool name="TimesTenDirectXAPool">
     <connection-factory factoryclass="com.timesten.jdbc.xa.TimesTenXADataSource"
     url="jdbc:timesten:direct:sampledb_1121"/>
</connection-pool>

<managed-data-source
    connection-pool-name="TimesTenDirectXAPool" jndiname="jdbc/TimesTenDirectXADS"
    name="TimesTenDirectXADS"
/manage-data-source>

図4
図4

ローカル・トランザクションのみを使用したクライアント/サーバー・アクセス
クライアント/サーバー接続は、TimesTenデータベースと異なるマシンで実行されているアプリケーションを対象とします。ここでは、Oracle Application Serverは、リモート・マシンからTimesTenデータベースにアクセスすることができます。この接続モードではネットワーク(TCP/IP)によるオーバーヘッドが発生するため、直接リンク接続モードよりもレスポンスに時間がかかります。

TimesTenクラス: com.timesten.jdbc.TimesTenDriver
URLの例: jdbc:timesten:client:sampledbCS_1121

図5
図5

Oracle_install_dir/j2ee/home/config/datasources.xmlエントリの例

<connection-pool name="TimesTenClientPool">
    <connection-factory factory-class="com.timesten.jdbc.TimesTenDriver"
     url="jdbc:timesten:client:sampledbCS_1121"/>
</connection-pool>

<managed-data-source
    connection-pool-name="TimesTenClientPool" jndiname="jdbc/TimesTenClientDS"
    name="TimesTenClientDS" tx-level="local"
/manage-data-source/>

図6
図6

XA分散トランザクションを使用したクライアント/サーバー・アクセス
JDBCドライバでは、XA分散トランザクションがサポートされます。クライアント/サーバー接続の場合、Oracle Application Serverはリモート・マシンからTimesTenデータベースにアクセスできます。この接続タイプでは、分散トランザクションによるオーバーヘッドに加えてネットワークによるオーバーヘッドが発生します。

TimesTen クラス: com.timesten.jdbc.xa.TimesTenXADatatSource
URLの例: jdbc:timesten:client:sampledbCS_1121

図7
図7

Oracle_install_dir/j2ee/home/config/datasources.xmlエントリの例

<connection-pool name="TimesTenClientXAPool">
    <connection-factory factory-class="com.timesten.jdbc.xa.TimesTenXADataSource"
     url="jdbc:timesten:client:sampledbCS_1121"/>
</connection-pool>

<managed-data-source
    connection-pool-name="TimesTenClientXAPool" jndiname="jdbc/TimesTenClientXADS"
    name="TimesTenClientXADS"
/manage-data-source/>

図8
図8

 

このアイコンにカーソルを置くと、すべてのスクリーン・ショットが非表示になります。