アプリケーション・レベルでの DB2 データ・ソース定義の拡張
拡張データ・ソース定義は、 コア以外のプロパティーまたはカスタム・プロパティーから構成されており、DB2® Universal JDBC Driver または DB2 Using IBM® JCC ドライバーを使用する場合に、DB2 データ・ソースでアプリケーションに高水準の柔軟性を加えられるようにするものです。 この機能は、異機種のプーリングと呼ばれることもあります。 データ・ソース・プロパティーのコア・セットを使用して、アプリケーション・サーバーで DB2 データ・ソースを構成する場合や、 currentSchema または clientApplicationInformation などの、 アプリケーション固有にするカスタムまたはコア以外のプロパティーが個々のアプリケーションで定義されるようにする場合に、この機能を使用します。 これらの拡張定義を使用すると、 データ・ソースに対して既に定義されているコア以外またはカスタムのプロパティーをオーバーライドすることもできます。また、 この機能では、同じデータ・ソースに接続されているリソース間で 1 つの接続プールを使用することによって、 アプリケーション・サーバーが使用する物理接続数を減らすことができます。
始める前に
- DB2 Universal JDBC Driver (バージョン 4.3.81 以上)
- IBM JCC ドライバー (バージョン 3.53.65 以上) を使用した DB2
このタスクについて
また、
アプリケーションは、独自のデータ・ソース・プロパティー・セットがある場合でも、
アプリケーション・サーバー内の同じ接続プールを共有することができます。アプリケーション・サーバー内で定義されるデータ・ソースが 1 つのみの場合は、
接続プールも 1 つのみになりますが、個々のアプリケーションでは、
複数のデータ・ソースが定義されているように見えます。これにより、
以下のことが生じる場合があります。
- アプリケーション・サーバーによるメモリー消費量の減少。データ・ソース定義は、 1 つの接続プールに対応しているため、専用の接続プールに対応しているデータ・ソース定義と比べて、 メモリー内のオブジェクトの数は少なくなります。
- データ・ソースに対して開いている接続数の減少。データ・ソースによるメモリー消費量を 減らすことができます。アプリケーション・サーバーは、 複数のデータ・ソースに対応する 1 つの接続プールを提供したり、 より効率的に接続を使用したりすることによって、アイドル接続の数を減らすことができます。
- アプリケーションが get/use/close 接続パターンを使用する場合における、 特定の DB2 シナリオでの 2 フェーズ・コミット (XA) トランザクションの回避。 アプリケーション・サーバーでは、 リソース参照にさまざまなコア以外のプロパティーがある場合でも、 同じトランザクション内において、同じコア・プロパティー・セットを持つさまざまなリソース参照間で接続を共用できます。 この動作では、接続の共有によってアプリケーション・サーバーで物理接続が 1 つのみ使用されている場合に、2 フェーズ・コミット処理を回避することができます。