Sun GlassFish Communications Server 2.0 管理ガイド

JDBC 接続プールの編集

「JDBC 接続プールを編集」ページは、名前を除く既存プールのすべての設定を変更する手段を提供します。

  1. 一般設定を変更します。

    一般設定の値は、インストールした固有の JDBC ドライバにより異なります。これらの設定は、Java プログラミング言語で記述されたクラスやインタフェースの名前です。

    パラメータ  

    説明  

    データソースクラス名 

    DataSource API または XADataSource API あるいはその両方を実装するベンダー固有のクラス名。このクラスは JDBC ドライバにあります。

    リソースタイプ 

    選択肢には javax.sql.DataSource (ローカルトランザクションに限る)、javax.sql.XADataSource (グローバルトランザクション)、および java.sql.ConnectinPoolDataSource (ローカルトランザクション、パフォーマンス向上の可能性あり) があります。

  2. プール設定を変更します。

    一連の物理データベース接続はプール内にあります。アプリケーションが接続を要求すると、接続はプールから削除され、アプリケーションが接続を解放すると、接続はプールに返されます。

    パラメータ  

    説明  

    初期および最小プールサイズ 

    プール内の接続の最小数。この値は、プールを最初に作成するときの、プールに含まれる接続の数も指定します。 

    最大プールサイズ 

    プールに含まれる接続の最大数。 

    プールサイズ変更量 

    プールのサイズを最大プールサイズおよび最小プールサイズに対して拡大および縮小すると、一括処理でプールサイズが変更されます。この値は一括処理での接続の数を指定します。この値を過大に設定すると接続の作成と再利用が遅れ、過小に設定すると効率が落ちます。 

    アイドルタイムアウト 

    プールで接続がアイドル状態のままでいられる最長時間を指定します。この時間を過ぎると、接続はプールから削除されます。 

    最大待ち時間 

    接続を要求するアプリケーションが接続タイムアウトになるまでに待つ時間。デフォルトの待ち時間は長いので、アプリケーションがハングアップしているように見える可能性があります。 

  3. 接続検証設定を変更します。

    オプションで、アプリケーションサーバーは接続が渡される前にそれを検証することができます。この検証により、ネットワークやデータベースサーバーに障害が発生してデータベースが利用できなくなった場合でも、アプリケーションサーバーが自動的にデータベース接続を再確立できます。接続の検証は追加オーバーヘッドとなるため、パフォーマンスに若干の影響が生じます。

    パラメータ  

    説明  

    接続検証 

    「必須」チェックボックスにチェックを付けて、接続検証を有効にします。 

    検証方法 

    アプリケーションサーバーは、次の 3 つの方法でデータベース接続を検証できます。 auto-commit、metadata、および table。 

    auto-commit と meta-data - アプリケーションサーバーは、con.getAutoCommit() メソッドと con.getMetaData() メソッドを呼び出して接続を検証します。

    auto-commit の検証は、2 つのメソッドを使用して接続を検証します。getAutoCommit() メソッドは auto-commit の現在の状態を取得し、setAutoCommit() は auto-commit の状態を変更します。これにより、データベースへの問い合わせが許可されます。getAutomCommit() がデータベースに問い合わせできるかどうかは、実装に基づきます。実際の物理的な接続は、接続プールなどの別の目的でラップされます。


    注 –

    多くの JDBC ドライバでは、これらの呼び出しの結果をキャッシュしているので、常に信頼のある検証が行われるとは限りません。呼び出しがキャッシュされるかどうかについて、ドライバベンダーに問い合わせる必要があります。


    table - アプリケーションは指定したデータベース表に問い合わせます。表は実在し、アクセス可能である必要がありますが、行は必要ありません。多くの行を持つ既存の表や、すでに頻繁にアクセスされている表を使用しないでください。 

    テーブル名 

    「検証方法」コンボボックスで表を選択した場合は、ここでデータベースのテーブル名を指定します。 

    すべての障害で 

    「すべての接続を閉じる」のチェックボックスを選択してある場合、1 つの接続が失敗すると、アプリケーションサーバーはプールに含まれるすべての接続を閉じ、それらを再確立します。そのチェックボックスを選択していない場合は、使用されるときにだけ個々の接続が再確立されます。 

    コンポーネントの呼び出し側以外を許可 

    サーブレットフィルタやライフサイクルモジュールなど、コンポーネント以外の呼び出し側が使用するためのプールを有効にする場合は、このチェックボックスにチェックマークを付けます。  

  4. トランザクション設定を変更します。

    データベースは通常多くのユーザーが同時にアクセスするため、あるトランザクションがデータを読み込もうとするときに別のトランザクションが同じデータを更新する可能性があります。トランザクションの遮断レベルは、更新されるデータがほかのトランザクションに見える度合いを定義します。遮断レベルの詳細については、データベースベンダーのドキュメントを参照してください。

    パラメータ  

    説明  

    非トランザクション接続 

    Application Server がすべての非トランザクション接続を返すようにする場合は、このチェックボックスにチェックマークを付けます。 

    トランザクション遮断 

    プールの接続のトランザクション遮断レベルを選択できるようにします。指定しない場合、接続には JDBC ドライバによって設定されるデフォルトの遮断レベルが適用されます。 

    遮断レベルを保証 

    遮断レベルを指定した場合にだけ適用されます。「保証」チェックボックスを選択すると、プールから取得されるすべての接続が同じ遮断レベルになります。たとえば、最後の使用時に con.setTransactionIsolation を使って接続の遮断レベルをプログラム的に変更した場合、このメカニズムによって状態が指定の遮断レベルに戻されます。

  5. プロパティーを変更します。

    「追加プロパティー」テーブルで、データベース名 (URL)、ユーザー名、およびパスワードなど、必要なプロパティーを指定できます。データベースベンダーによってプロパティーが異なるため、詳細については、ベンダーのドキュメントを調べてください。