Cosminexus V9 アプリケーションサーバ 機能解説 互換編

[目次][用語][索引][前へ][次へ]

2.10.2 データベースと接続するための設定(データソースを使用する場合)

ここでは,ベーシックモードでのリソース接続について説明します。

データベースと接続するために必要なデータソースの設定をします。データソースの設定は,サーバ管理コマンドで実行します。

データソースを使用してデータベースと接続するには,J2EEサーバをベーシックモードで動作させる必要があります。

データソースの設定の流れを次に示します。

  1. DABroker Libraryの環境設定をします。
  2. データソースをインポートします。
  3. プロパティを定義します。
  4. 接続を確認します。

インポートしたデータソースは,削除およびコピーができます。

<この項の構成>
(1) DABroker Libraryの環境設定
(2) データソースのインポート
(3) データソースのプロパティ定義
(4) データソースの接続テスト

(1) DABroker Libraryの環境設定

DABroker Libraryは,DABroker Libraryの環境設定ユティリティ(Windowsの場合),またはDABroker Library動作環境定義ファイル(UNIXの場合)で設定します。設定方法については,「4.2 DABroker Libraryを使用したデータベース接続の概要」を参照してください。

(2) データソースのインポート

データソースまたはJDBCドライバをJ2EEサーバにインポートします。

次に示すコマンドを実行してデータソースをインポートします。

実行形式

cjimportres [<サーバ名称>] [-nameserver <プロバイダURL>] -type datasource -resname <データソースの表示名> -c <データソース設定ファイルパス> -f <JDBCドライバファイルパス>

実行例
cjimportres MyServer -type datasource -resname JdbcDbpsv -c JdbcDbpsvConf.xml -f JdbcDbpsv.jar

cjimportresコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「cjimportres(リソースのインポート)」を参照してください。

注意事項
  • JDBCのデータソースとしてインポートできるDABroker LibraryのJARファイルは,JdbcDbpsv.jarだけです。JdbcDbpsvEX.jarはサポートされていません。また,JdbcDbpsv.jarは,「<Application Serverのインストールディレクトリ>\DABJ」ディレクトリ(Windowsの場合)または「/opt/Cosminexus/DABJ」ディレクトリ(UNIXの場合)に配置されている必要があります。
  • データソースの表示名には,すでにあるデータソースの名前やメールサーバ構成情報の名前を指定しないでください。
  • インポート時に指定したJARファイル名は,作業ディレクトリ中のディレクトリ名として用いられます。作業ディレクトリのパス長がプラットフォームの上限に達しないようにJARファイル名を指定してください。作業ディレクトリのパス長の見積もりについては,マニュアル「アプリケーションサーバ システム構築・運用ガイド」の「付録C.1(2) 作業ディレクトリのパス長の見積もり式」を参照してください。
  • データソースを削除するまで,J2EEサーバ用ユーザプロパティファイル(usrconf.properties)のejbserver.http.portキーの値は変更しないでください。変更した場合は,データソースを再作成してください。

(3) データソースのプロパティ定義

データソースのプロパティを定義します。プロパティの設定手順については,マニュアル「アプリケーションサーバ アプリケーション設定操作ガイド」の「3.5 属性ファイルによるプロパティの設定」を参照してください。

(a) 編集する属性ファイル

データソース属性ファイル

(b) 編集する属性ファイルの取得と属性の設定
●属性ファイルの取得

次に示すコマンドを実行して,データソースのデータソース属性ファイルを取得します。

実行形式
 
cjgetresprop [<サーバ名称>] [-nameserver <プロバイダURL>] -type datasource -resname <データソースの表示名> -c <属性ファイルパス>
 

実行例
cjgetresprop MyServer -type datasource -resname JdbcDbpsv -c JdbcDbpsvProp.xml
●属性の設定

次に示すコマンドを実行して,データソース属性ファイルの値を反映します。

実行形式
 
cjsetresprop [<サーバ名称>] [-nameserver <プロバイダURL>] -type datasource -resname <データソースの表示名> -c <属性ファイルパス>
 

実行例
cjsetresprop MyServer -type datasource -resname JdbcDbpsv -c JdbcDbpsvProp.xml
(c) 編集する属性設定項目

データソースのプロパティ設定項目を次に示します。

●データソースの一般情報

データソースの一般情報の設定項目を次に示します。

項目 対応するタグ
データソースの説明 <description>
データソース名 <display-name>
●実行時プロパティ

データソースの実行時プロパティ(<property>タグ)の設定項目を次に示します。

項目 対応するタグ
プロパティ名 <name>
XADataSourceインタフェースのプロパティ値 <XADataSource>

注 データソースについて設定する項目は,インポートしたデータベースの種類によって異なります。データベースに固有の項目については,そのデータベースのマニュアルを参照してください。


定義するプロパティの数だけ,<property>タグの設定を繰り返してください。

プロパティの設定項目については,「2.11.4 データソース属性ファイル」を参照してください。

●コネクションプーリング情報

プーリングとはデータソースとデータベースのコネクションをあらかじめ確立しておき,接続時のオーバーヘッドを減らす手法です。データソースがデータベースコネクションプーリングをサポートする場合,データベースコネクションプールの管理方法を指定できます。コネクションプーリング情報は,プールにあらかじめどのくらいのコネクションを用意しておくのか,また,プールにある不要なコネクションを削除するタイミングなどを指定します。

コネクション取得時にエラーとなった場合に,アプリケーションにエラーを返さないで,繰り返し取得を試みることができます。プーリングしてあるすべてのコネクションが使用中で一時的に取得失敗になる場合など,本機能によってアプリケーションにエラーを返すことなくコネクションを再取得できます。

データソースのコネクションプーリング情報,およびコネクション再取得情報(<PoolConfiguration>タグ)の設定項目を次に示します。

項目 説明 対応するタグ
コネクションプールにプールするコネクションの最小値 データベースコネクションプールに割り当てるデータベースコネクションの最小数を指定します。この最小値に達すると,データベースコネクションはそれ以上削除されません。
定常状態の同時コネクション数を指定してください。
<MinimumSize>
コネクションプールにプールするコネクションの最大値 データベースコネクションプールで使用できるデータベースコネクションの最大数を指定します。この最大値に達すると,それ以上のデータベースコネクションは追加されません。-1を指定すると,無制限にコネクションを使用できます。この場合,データベースで許容される最大コネクション数によって最大数は制限されます。
同時コネクション数の最大値を指定してください。
<MaximumSize>
コネクションプールにプールするコネクションのしきい値 データベースコネクションプールにデータベースコネクションを追加するしきい値を指定します。つまり,プールにある未使用コネクションの数がここで指定した値以下になった場合,データベースコネクションをプールに追加します。 <Threshold>
コネクションプールにプールするコネクションの増分値 しきい値に達した場合にデータベースコネクションプールに追加するデータベースコネクションの数を指定します。 <GrowthIncrement>
コネクション取得待ち時間(秒) データベースコネクションプールからデータベースコネクションを取得しようとするときに,コネクション取得のリトライをするまでのアプリケーションの待ち時間を秒単位で指定します。指定した時間が経過してもリトライしない場合,エラーが返されます。コネクションが使用できない場合に待たないようにするときは0を指定し,コネクションを取得できるまで待つようにするときは-1を指定します。 <WaitTimeout>
コネクション接続タイムアウト値(秒) データベースコネクションの保持時間を秒単位で指定します。指定した時間が経過すると,次のスイーパサイクルでデータベースコネクションを削除します。コネクションタイムアウトの経過後,最小数よりも多く使用できるコネクションがプール内にある場合,そのコネクションは削除されます。プール内に最小数のコネクションだけがある場合,そのコネクションはリオープンされます。 <ConnectionTimeout>
スイーパ起動時間 スイーパサイクルの間隔を秒単位で指定します。スイーパサイクルは,すべてのデータベースコネクションをチェックし,<ConnectionTimeout>で指定した時間よりも古いコネクションを削除します。 <SweeperInterval>
コネクション取得のリトライ回数 コネクションの取得に失敗して,再度取得を行う場合のリトライ回数を指定します。 <RetryCount>
コネクション取得をリトライするまでの時間(秒) コネクションの取得に失敗して,再度取得を行う場合のリトライ間隔を指定します。 <RetryInterval>

プーリングを使用しない場合,すべてのフィールドに0を指定します。この場合,データソースは,非プーリングデータソースのように動作します。つまり,データベースコネクションを保持しません。また,データベースコネクションが必要な場合,要求側は,データソースがインタフェースを取得するまで待たなければなりません。したがって,性能にかなりの影響を与えることになります。

(4) データソースの接続テスト

データソースに設定した内容が正しいかどうか,接続テストによって検証します。

次に示すコマンドを実行してデータソースの接続を確認します。

実行形式

cjtestres [<サーバ名称>] [-nameserver <プロバイダURL>] -type datasource -resname<データソースの表示名> [-resname <データソースの表示名>]

実行例
cjtestres -type datasource -resname Myds1

cjtestresコマンドの詳細については,マニュアル「アプリケーションサーバ リファレンス コマンド編」の「cjtestres(リソースの接続テスト)」を参照してください。