アプリケーションのパフォーマンスを向上させるには、
WebSphere Application Server 管理コンソールを使用して、
データ・アクセス・リソースをいくつか調整することができます。
データ・ソース
および接続プールのこれらのプロパティーを調整して、
アプリケーションとデータ・ストア間のトランザクションのパフォーマンスを最適化します。
データ・ソース・チューニング
以下のプロパティーを構成する際に管理コンソール・ページを表示するには、
「
リソース」>「
JDBC プロバイダー」>「
JDBC_provider」>「
データ・ソース」>「
data_source」>「
WebSphere Application Server 接続プロパティー」をクリックします。
- JMS 1 フェーズ最適化サポートを使用可能にする
- アプリケーションが JMS メッセージングを使用しない場合は、
このオプションを選択しないでください。
このサポートを活動化すると、
Java Message Service (JMS) がデータ・ソースから最適化接続を取得できます。
このサポートを活動化すると、
JDBC アプリケーションはデータ・ソースからの接続の取得も阻止されます。
JMS 1 フェーズ・サポートのさらに詳しい説明については、
このインフォメーション・センターにある、
『Sharing connections to benefit from one phase commit optimization』というタイトルの項目を参照してください。
- ステートメント・キャッシュ・サイズ
- 接続ごとにキャッシュできるステートメントの数を指定します。
WebSphere Application Server データ・ソースは、
準備済みステートメント
および
呼び出し可能ステートメント
の処理を最適化するために、アクティブな接続で使用されていないそれらのステートメントをキャッシュします。
どちらのステートメント・タイプもバックエンド・データによるトランザクションのオーバーヘッドの削減に役立ちます。
- 準備済みステートメントとは、PreparedStatement
オブジェクトに保管されているプリコンパイルされた SQL ステートメントです。アプリケーション・サーバーは
このオブジェクトを使用して、アプリケーション・ランタイムの要求に応じて、ランタイムで判別された値で SQL
ステートメントを複数回実行します。
- 呼び出し可能ステートメントとは、ストアード・プロシージャーへの呼び出しを含む
SQL ステートメントです。
ストアード・プロシージャーは、タスクを実行し、結果を戻す、プリコンパイルされたステートメントのセットです。
ステートメントは、CallableStatement オブジェクトに保管されます。
Application Server はこのオブジェクトを使用して、
アプリケーション・ランタイムの要求に応じて、ランタイムで判別された値で、ストアード・プロシージャーを複数回実行します。
一般に、ア
プリケーションの持つステートメントが多いほど、キャッシュを大きくする必要
があります。ただし、必要以上に大きいステートメント・キャッシュ・サイズを指定すると、
アプリケーション・メモリーを浪費するだけで、パフォーマンスは向上し
ない ということに注意してください。
特定のサーバー上のこのデータ・ソースを使用するアプリケーションごとに、
固有の準備済みステートメント、呼び出し可能ステートメント
(SQL ストリング、並行性、およびスクロール・タイプによって判別されるとおりに) を追加して、
キャッシュ・サイズの値を判別します。
この値は、サーバーの存続期間中、特定の 1 つの接続上にキャッシュできるステートメントの最大数です。この設定に関する追加情報...
デフォルト: ほとんどのデータベースの場合、デフォルトは 10 です。
ゼロは、キャッシュ・ステートメントがないということを意味します。
接続プール・チューニング
以下のプロパティーを構成する際に管理コンソール・ページを表示するには、
「
リソース」>「
JDBC プロバイダー」>「
JDBC_provider」>「
データ・ソース」>「
data_source」>「
Connection pool settings」をクリックします。
- 最大接続数
- このプールに構築できる物理接続の最大数を指定します。
これらは、バックエンド・データ・ストアへの物理接続です。
この数値に到達すると、新規の物理接続は構築されません。
リクエスターは、現在使用中の物理接続がプールに戻されるまで待機しなければなりません。
パフォーマンスを最適化するには、
接続プールの値を Web コンテナーのスレッド・プール・サイズの値より低く設定します。
低い設定 (例えば、10 から 30 の接続) では、
高い設定 (例えば、100) の場合よりもパフォーマンスが向上します。
この設定および関連する設定に関する追加情報...
デフォルト: 10
- 最小接続数
- 維持する物理接続の最小数を指定します。この数値を超えるまで、
プール維持スレッドは物理接続を廃棄しません。
このプロパティーを、アプリケーションが実行時に最終的に使用する接続数よりも高く設定すると、
アプリケーション・リソースを浪費しません。
WebSphere Application Server は、
最小設定を達成するために追加の接続を作成しません。
もちろん、このプロパティーに対して設定した値よりも多くの接続をアプリケーションが必要とする場合、
接続要求が実行を待機するにつれて、アプリケーションのパフォーマンスが低下します。
この設定および関連する設定に関する追加情報...
デフォルト: 1