接続プールは、接続管理のオーバーヘッドを軽減し、 データ・アクセスの開発タスクを削減するのに役立ちます。
アプリケーションは、 バックエンド・ストア (データベースなど) にアクセスしようとするたびに、 リソースがそのデータ・ストアへの接続を作成、保守、および解除するように要求します。 このプロセスによってアプリケーション・リソース全体にかかる負荷を軽減するために、 Application Server では、 アプリケーション・サーバー上でアプリケーションが共用可能なバックエンド接続のプールを 管理者が設定できるようにしています。接続のプール は複数のユーザー要求の間に接続オーバーヘッドを広げ、それによって、 将来の要求のためのアプリケーション・リソースを保護します。
Application Server は、接続のプールおよび接続再利用で JDBC 3.0 API をサポートしています。接続プールは、アプリケーション内での直接の JDBC 呼び出しに使用されるとともに、 データベースを使用するエンタープライズ Bean にも使用されます。
接続プールにより、接続を必要とするアプリケーション、 特に Web ベース・アプリケーションの応答時間を改善することができます。 ユーザーが Web 上でリソースに要求を行うと、そのリソースはデータ・ソースにアクセスします。 ユーザーはインターネット上のアプリケーションに対して頻繁に接続と切断を繰り返すため、 データ・アクセスへのアプリケーション要求のボリュームがかなり大きくなる場合があります。 その結果、データ・ストア・オーバーヘッドの合計が Web ベース・アプリケーションにとって急激に大きくなり、 パフォーマンスが低下します。接続プール機能を使用すると、 Web アプリケーションで、標準の結果の最大で 20 倍のパフォーマンス向上を実現できます。
接続プールを使用すると、データ・ソースは接続プールから既存の接続を探し出してそれを使用できるので、 ほとんどのユーザー要求では、新規接続を作成する場合のオーバーヘッドが発生することはありません。 要求が満たされ、応答がユーザーに戻されると、 リソースはその接続を接続プールに戻して再使用に備えます。 切断のオーバーヘッドは発生しません。個々のユーザー要求により、 わずかながら接続または切断の負荷がかかります。 初期リソースを使用してプールに接続を生成しておけば、 既存の接続が再使用されるので、 追加のオーバーヘッドはわずかですみます。
WebSphere 接続プールは、以下の基準のいずれかを満たすアプリケーションで使用します。
固有のデータ・ソースまたは接続ファクトリーを構成する場合は、 固有の Java Naming and Directory Interface (JNDI) 名を指定する必要があります。 この JNDI 名は、その構成情報と共に、接続プールを作成するために使用されます。 構成されるデータ・ソースまたは接続ファクトリーごとに、 個別の接続プールが存在します。
バックエンド・リソースがサポートできる接続数に、 このような動作がどの程度影響を与えるかを検討してください。 詳しくは、接続プール設定 を参照してください。
接続の共用 を使用する際には、 同じ接続プールから取得した接続しか共用できないという点に注意することも重要です。
T * (C - 1) + 1接続プールの設定値は、データベース・サーバーがサポートするように構成されている接続の数に、直接関係しています。