JDBC接続プールの詳細属性を編集する

  1. ナビゲーション・ツリーで、「リソース」ノードを展開します。

  2. 「リソース」ノードで、「JDBC」ノードを選択します。

  3. 「JDBC」ノードで、「接続プール」ノードを選択します。

    「接続プール」ページが開きます。

  4. 「接続プール」ページで、編集するプールの名前をクリックします。

    「接続プールを編集」ページが開きます。

  5. 「接続プールを編集」ページで、「詳細」タブをクリックします。

    「接続プールの詳細属性を編集」ページが開きます。

  6. 「文のタイムアウト」フィールドに、実行時間が異常に長いクエリーを停止するまでの時間を秒単位で入力します。

    GlassFish Serverは、作成される文にQueryTimeoutを設定します。値を-1に設定すると、このオプションが無効になります。デフォルト値は-1です。

  7. 「文のキャッシュ・サイズ」フィールドに、LRU(Least Recently Used)キャッシュ・メカニズムを使用してキャッシュされる文の数を入力します。

    文のキャッシュを無効にするには、0を指定します。デフォルト値は0です。

  8. 「SQLの初期化」フィールドに、接続がプールに作成される(再使用でない)ときに実行されるSQL文字列を入力します。

    この文字列の実行で、接続の状態が初期化されます。

  9. 「SQLトレース・リスナー」フィールドに、リスナー実装クラス名のカンマ区切りリストを入力して、アプリケーションによって実行されるSQL文を監視することを指定します。

    リスナー・クラスはorg.glassfish.api.jdbc.SQLTraceListenerインタフェースを実装する必要があります。リスナーを使用すると、SQL文のログ・メッセージに簡単にフィルタを適用することができ、管理者が文を解析する際に役立ちます。

  10. アプリケーションの「JDBCオブジェクトをラップ」の「有効」チェックボックスを選択して、StatementPreparedStatementCallableStatementResultSetDatabaseMetaDataに対してラップされたJDBCオブジェクトを取得します。

    このオプションはデフォルトで有効になっています。

  11. 「プール」チェックボックスを選択して、プールの接続プールを有効にします。

    このオプションはデフォルトで有効になっています。

  12. 「最大で1回検証」フィールドに、接続を最大で1回のみ検証するまでの時間を秒単位で入力します。

    この属性を適切な値に設定すると、接続ごとの確認リクエスト回数を最小にできます。デフォルト値は0です。この属性が無効であることを意味します。

  13. 「接続リーク・タイムアウト」フィールドに、接続プールの接続リークを追跡する時間を秒単位で入力します。

    このフィールドを使用して、アプリケーションによる接続リークの可能性を検出します。アプリケーションが指定された期間内に接続をプールに戻さなかった場合、この接続はリークしている可能性があると見なされ、呼出し側のスタック・トレースがログに記録されます。接続リークのトレースを無効にするには、値を0に設定します。デフォルト値は0です。

    このフィールドを「接続リーク再要求」とともに使用すると、アプリケーションによる潜在的な接続リークを避けることができます。

  14. リーク接続の追跡完了後に、リークした接続をプールに戻すには、「接続リーク再要求」チェックボックスを選択します。

    このオプションは、デフォルトでは無効になっています。

  15. 「文のリーク・タイムアウト」フィールドに、接続プールの文のリークを追跡する時間を秒単位で入力します。

    このフィールドを使用して、アプリケーションによる文リークの可能性を検出します。アプリケーションが指定された期間内に文をプールに戻さなかった場合、この接続はリークしている可能性があると見なされ、呼出し側のスタック・トレースがログに記録されます。文のリークの追跡を無効にするには、値を0に設定します。デフォルト値は0です。

    このフィールドを「文のリーク再要求」とともに使用すると、アプリケーションによる潜在的な文のリークを避けることができます。

  16. リーク文の追跡完了後に、リークした文をプールに戻すには、「文のリーク再要求」チェックボックスを選択します。

    このオプションは、デフォルトでは無効になっています。

  17. 「作成再試行回数」フィールドに、新しい接続の作成時に障害が発生した場合の試行回数を入力します。

    値を0に設定すると、接続の再作成は試行されません。デフォルト値は0です。

  18. 「再試行間隔」フィールドに、接続作成の試行間隔を秒単位で入力します。

    デフォルト値は10です。この属性は、「作成再試行回数」が1以上の場合にのみ使用されます。

  19. 「使用時にのみ関連付け」の「有効」チェックボックスを選択して、物理的な接続を、接続が使用されているときにのみ論理的な接続に関連付けます。

    トランザクションが完了してコンポーネント・メソッドが終了したときに関連付けが解除されるため、物理的な接続を再利用しやすくなります。このオプションが無効な場合、物理的な接続は使用される前でも論理的な接続に関連付けられます。このオプションは、デフォルトでは無効になっています。

  20. 「使用時にのみ接続を登録」の「有効」チェックボックスを選択して、リソースが実際にメソッドで使用されるときのみ、トランザクションにリソースを登録します。

    このオプションは、デフォルトでは無効になっています。

  21. 「スレッドとの関連付け」の「有効」チェックボックスを選択して、接続とスレッドの間のアソシエーションを作成します。

    同じスレッドが別の接続で必要なときには、そのスレッドにすでに関連付けられている接続を再使用できるため、プールから別の接続を取得するオーバーヘッドが発生しません。このオプションは、デフォルトでは無効になっています。

  22. 「接続の照合」の「有効」チェックボックスを選択して、プールに対する接続の照合を有効にします。

    このオプションが有効な場合、プールから選択された接続は、特定の資格証明を持つ接続と一致する必要があります。複数のユーザー資格証明を持つアプリケーションによって接続プールが使用されている場合は、このオプションを有効にする必要があります。プール内の接続が常に同じ種類であり、プールから選択した接続とリソース・アダプタを照合する必要がないことを管理者が理解している場合は、このオプションを無効に設定できます。このオプションは、デフォルトでは無効になっています。

  23. 「最大接続使用数」フィールドに、接続をプールで再利用する回数を入力します。

    指定された回数だけ再利用されると、その接続はクローズされます。接続を再利用できる回数を制限することにより、アプリケーションが文を閉じていない場合に、文のリークを避けることができます。この属性を無効にするには、値を0に設定します。デフォルト値は0です。

  24. 「接続検証」の「必須」チェックボックスを選択して、接続検証を有効にします。

    接続検証によって、サーバーは障害発生時に再接続できます。

  25. 「検証方法」ドロップダウン・リストから、検証方法を選択します。

    GlassFish Serverは、データベース接続を次の方法で検証できます。

    auto-commitおよびmetadata

    GlassFish Serverは、con.getAutoCommitメソッドとcon.getMetaDataメソッドを呼び出して接続を検証します。


    注意:

    多数のJDBCドライバが、これらの呼出しの結果をキャッシュします。その結果、これらの呼出しを使用すると、信頼できる検証が行われない場合もあります。呼出しがキャッシュされるかどうかについて、ドライバ・ベンダーに問い合せる必要があります。
    custom-validation

    GlassFish Serverは、カスタム実装クラスで「検証クラス名」フィールドに指定した、ユーザー定義の検証メカニズムを使用します。

    table

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

  26. 「検証方法」ドロップダウン・リストで「table」を選択した場合は、データベース表の名前を入力するか、「テーブル名」ドロップダウン・リストから選択します。

  27. 「検証方法」ドロップダウン・リストから「custom-validation」を選択した場合は、カスタム検証の実装クラス名を入力するか、「検証クラス名」ドロップダウン・リストから選択します。

    指定したクラス名は、GlassFish Serverからアクセス可能である必要があります。指定したクラスはorg.glassfish.api.jdbc.ConnectionValidationインタフェースを実装する必要があります。

  28. 単一接続障害が発生したときに、サーバーを閉じ、プールのすべての接続を再度確立するには、「すべての障害で」の「すべての接続をクローズ」チェックボックスを選択します。

    このオプションが無効な場合、個々の接続はそれぞれの使用時のみ再度確立されます。このオプションは、デフォルトでは無効になっています。

  29. 「コンポーネントの呼出し側以外を許可」の「有効」チェックボックスを選択して、サーブレット・フィルタや他社の永続性マネージャなどのコンポーネント以外の呼出し側がプールを使用できるようにします。

    コンポーネントの呼出し側以外によって取得された接続は、トランザクションの終わりにコンテナによって自動的にクローズされません。呼出し側が明示的にクローズする必要があります。このオプションは、デフォルトでは無効になっています。

  30. 「一般」タブの「フラッシュ」ボタンをクリックして、プールからすべての接続をフラッシュします。

    「フラッシュ」ボタンをクリックすると、既存の接続が破棄されます。プールで確立された接続が再作成され、プールが初期および最小プール・サイズに復元されます。

  31. 「保存」をクリックします。


    ヒント:

    デフォルト設定に戻すには、「デフォルトをロード」ボタンをクリックし、「保存」をクリックします。

関連項目
Copyright © 2005, 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices